From bceb1409f81832e08c852cfbeb63668fae8ca012 Mon Sep 17 00:00:00 2001 From: Wolfgang Beck Date: Tue, 18 Oct 2011 10:55:17 +1000 Subject: MTMW-306 Update cubehouse example Change-Id: I473898a4a6a46c89edb7d7b6ada7027dd9ae96d6 Reviewed-by: Wolfgang Beck --- examples/sensors/cubehouse/Cube.qml | 81 + examples/sensors/cubehouse/Cubehouse.qml | 99 + examples/sensors/cubehouse/Room.qml | 285 ++ examples/sensors/cubehouse/Table.qml | 50 + examples/sensors/cubehouse/camera.cpp | 1051 ------ examples/sensors/cubehouse/camera.h | 166 - examples/sensors/cubehouse/cube.h | 89 - examples/sensors/cubehouse/cubehouse.pro | 31 - examples/sensors/cubehouse/cubehouse.qmlproject | 20 + examples/sensors/cubehouse/cubehouse.qrc | 8 - examples/sensors/cubehouse/icon.png | Bin 0 -> 7607 bytes examples/sensors/cubehouse/images/ground.jpg | Bin 0 -> 3077 bytes examples/sensors/cubehouse/images/qtlogo.png | Bin 0 -> 13923 bytes examples/sensors/cubehouse/images/roof.jpg | Bin 0 -> 3866 bytes examples/sensors/cubehouse/images/wall.jpg | Bin 0 -> 6195 bytes examples/sensors/cubehouse/info.json | 14 + examples/sensors/cubehouse/light.cpp | 675 ---- examples/sensors/cubehouse/light.h | 141 - examples/sensors/cubehouse/lighting.vsh | 121 - examples/sensors/cubehouse/lightmodel.cpp | 243 -- examples/sensors/cubehouse/lightmodel.h | 108 - examples/sensors/cubehouse/main.cpp | 57 - examples/sensors/cubehouse/material.cpp | 331 -- examples/sensors/cubehouse/material.fsh | 47 - examples/sensors/cubehouse/material.h | 101 - examples/sensors/cubehouse/mesh/table.3ds | Bin 0 -> 9149 bytes examples/sensors/cubehouse/painter.cpp | 83 - examples/sensors/cubehouse/painter.h | 115 - examples/sensors/cubehouse/painter_fixed.cpp | 242 -- examples/sensors/cubehouse/painter_shader.cpp | 159 - examples/sensors/cubehouse/qtlogo.png | Bin 13923 -> 0 bytes examples/sensors/cubehouse/teapot.h | 4550 ----------------------- examples/sensors/cubehouse/texture.fsh | 51 - examples/sensors/cubehouse/view.cpp | 291 -- examples/sensors/cubehouse/view.h | 94 - examples/sensors/maze/info.json | 2 +- examples/sensors/sensors.pro | 3 +- 37 files changed, 551 insertions(+), 8757 deletions(-) create mode 100644 examples/sensors/cubehouse/Cube.qml create mode 100644 examples/sensors/cubehouse/Cubehouse.qml create mode 100644 examples/sensors/cubehouse/Room.qml create mode 100644 examples/sensors/cubehouse/Table.qml delete mode 100644 examples/sensors/cubehouse/camera.cpp delete mode 100644 examples/sensors/cubehouse/camera.h delete mode 100644 examples/sensors/cubehouse/cube.h delete mode 100644 examples/sensors/cubehouse/cubehouse.pro create mode 100644 examples/sensors/cubehouse/cubehouse.qmlproject delete mode 100644 examples/sensors/cubehouse/cubehouse.qrc create mode 100644 examples/sensors/cubehouse/icon.png create mode 100644 examples/sensors/cubehouse/images/ground.jpg create mode 100644 examples/sensors/cubehouse/images/qtlogo.png create mode 100644 examples/sensors/cubehouse/images/roof.jpg create mode 100644 examples/sensors/cubehouse/images/wall.jpg create mode 100644 examples/sensors/cubehouse/info.json delete mode 100644 examples/sensors/cubehouse/light.cpp delete mode 100644 examples/sensors/cubehouse/light.h delete mode 100644 examples/sensors/cubehouse/lighting.vsh delete mode 100644 examples/sensors/cubehouse/lightmodel.cpp delete mode 100644 examples/sensors/cubehouse/lightmodel.h delete mode 100644 examples/sensors/cubehouse/main.cpp delete mode 100644 examples/sensors/cubehouse/material.cpp delete mode 100644 examples/sensors/cubehouse/material.fsh delete mode 100644 examples/sensors/cubehouse/material.h create mode 100644 examples/sensors/cubehouse/mesh/table.3ds delete mode 100644 examples/sensors/cubehouse/painter.cpp delete mode 100644 examples/sensors/cubehouse/painter.h delete mode 100644 examples/sensors/cubehouse/painter_fixed.cpp delete mode 100644 examples/sensors/cubehouse/painter_shader.cpp delete mode 100644 examples/sensors/cubehouse/qtlogo.png delete mode 100644 examples/sensors/cubehouse/teapot.h delete mode 100644 examples/sensors/cubehouse/texture.fsh delete mode 100644 examples/sensors/cubehouse/view.cpp delete mode 100644 examples/sensors/cubehouse/view.h (limited to 'examples/sensors') diff --git a/examples/sensors/cubehouse/Cube.qml b/examples/sensors/cubehouse/Cube.qml new file mode 100644 index 00000000..f01bc182 --- /dev/null +++ b/examples/sensors/cubehouse/Cube.qml @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtSensors module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.0 +import Qt3D 1.0 +import Qt3D.Shapes 1.0 + +Cube { + objectName: "cube" + + transform: [ + Rotation3D { + angle: 45.0 + axis: Qt.vector3d(1, 0, 0) + }, + Rotation3D { + angle: 45.0 + axis: Qt.vector3d(0, 0, 1) + }, + Rotation3D { + id: yRT + angle: 0 + axis: Qt.vector3d(0, -1, 0) + } + ] + + SequentialAnimation { + running: true + loops: Animation.Infinite + NumberAnimation { + target: yRT + property: "angle" + from: 0 + to: 360 + duration: 1000 + } + } + + effect: Effect { + color: "#aaca00" + texture: "images/qtlogo.png" + decal: true + } +} diff --git a/examples/sensors/cubehouse/Cubehouse.qml b/examples/sensors/cubehouse/Cubehouse.qml new file mode 100644 index 00000000..8ea06de0 --- /dev/null +++ b/examples/sensors/cubehouse/Cubehouse.qml @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtSensors module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.0 +import Qt3D 1.0 +import Qt3D.Shapes 1.0 +import QtMobility.sensors 1.3 +import "." + +Item { + id: mainWindow + width: 320 + height: 480 + + Viewport { + id: view + anchors.top: parent.top + width: parent.width + height: parent.height + renderMode: "DirectRender" + fillColor: "darkblue" + objectName: "cube viewport" + camera: Camera { eye: Qt.vector3d(0, 3, 1.6 * room.scale )} + + Room{ + id: room + scale: 7.0 + } + + function rotateY(y) + { + room.rotateY(y); + } + + function rotateX(x) + { + room.rotateX(x); + } + } + + Accelerometer { + id: accel + active: true + property double pitch: 0.0 + property double roll: 0.0 + + onReadingChanged: { + pitch = -(Math.atan2(reading.x, Math.sqrt(reading.y * reading.y + reading.z * reading.z)) * 180) / Math.PI; + roll = (Math.atan2(reading.y, Math.sqrt(reading.x * reading.x + reading.z * reading.z)) * 180) / Math.PI; + } + } + + //Timer to read out the x and y rotation of the TiltSensor + Timer { + interval: 150; running: true; repeat: true + + onTriggered: { + view.rotateY(accel.pitch); + view.rotateX(accel.roll); + } + } +} diff --git a/examples/sensors/cubehouse/Room.qml b/examples/sensors/cubehouse/Room.qml new file mode 100644 index 00000000..847b4e80 --- /dev/null +++ b/examples/sensors/cubehouse/Room.qml @@ -0,0 +1,285 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtSensors module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.0 +import Qt3D 1.0 +import Qt3D.Shapes 1.0 +import "." + +Item3D{ + id: room + property double scale: 1.0 + property bool yspin: false + property bool xspin: false + property int yrot: 0 + property int xrot: 0 + + transform: [ + Rotation3D { + id: yRT + angle: 0 + axis: Qt.vector3d(0, -1, 0) + }, + Rotation3D { + id: xRT + angle: 0 + axis: Qt.vector3d(-1, 0, 0) + } + ] + + SequentialAnimation { + running: yspin + NumberAnimation { + target: yRT + property: "angle" + to: yrot + easing.type:"OutQuad" + } + onCompleted: yspin = false + } + + SequentialAnimation { + running: xspin + NumberAnimation { + target: xRT + property: "angle" + to: xrot + easing.type:"OutQuad" + } + onCompleted: xspin = false + } + + function rotateY(y) + { + room.yrot=y; + room.yspin = true; + } + + function rotateX(x) + { + room.xrot=x; + room.xspin = true; + } + + Quad { + id: frontWall + scale: room.scale + effect: Effect { + texture: "images/wall.jpg" + } + transform: [ + Translation3D { + translate: Qt.vector3d(0, -frontWall.scale, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(1, 0, 0) + }, + Rotation3D { + angle: 0 + axis: Qt.vector3d(0, 1, 0) + }, + Rotation3D { + angle: 0 + axis: Qt.vector3d(0, 0, 1) + } + ] + } + + Quad { + id: ground + scale: room.scale + effect: Effect { + texture: "images/ground.jpg" + } + transform: [ + Translation3D { + translate: Qt.vector3d(0, -ground.scale, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(1, 0, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(0, 1, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(0, 0, 1) + } + ] + } + + Quad { + id: leftWall + scale: room.scale + effect: Effect { + texture: "images/wall.jpg" + } + transform: [ + Translation3D { + translate: Qt.vector3d(0, -leftWall.scale, 0) + }, + Rotation3D { + angle: 0 + axis: Qt.vector3d(1, 0, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(0, 1, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(0, 0, 1) + } + ] + } + + Quad { + id: rightWall + scale: room.scale + effect: Effect { + texture: "images/wall.jpg" + } + transform: [ + Translation3D { + translate: Qt.vector3d(0, -rightWall.scale, 0) + }, + Rotation3D { + angle: 180 + axis: Qt.vector3d(1, 0, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(0, 1, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(0, 0, 1) + } + ] + } + + Quad { + id: roof + scale: room.scale + effect: Effect { + texture: "images/roof.jpg" + } + transform: [ + Translation3D { + translate: Qt.vector3d(0, -roof.scale, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(1, 0, 0) + }, + Rotation3D { + angle: -90 + axis: Qt.vector3d(0, 1, 0) + }, + Rotation3D { + angle: 90 + axis: Qt.vector3d(0, 0, 1) + } + ] + } + + Quad { + id: backWall + scale: room.scale + effect: Effect { + texture: "images/wall.jpg" + } + transform: [ + Translation3D { + translate: Qt.vector3d(0, -backWall.scale, 0) + }, + Rotation3D { + angle: -90 + axis: Qt.vector3d(1, 0, 0) + }, + Rotation3D { + angle: 0 + axis: Qt.vector3d(0, 1, 0) + }, + Rotation3D { + angle: 0 + axis: Qt.vector3d(0, 0, 1) + } + ] + } + + Cube { + id: cube + scale: 0.5 + + transform: [ + Translation3D { + translate: Qt.vector3d(0.0, 0.8 - 0.85, 0.0) + } + ] + } + + Table { + scale: 0.045 + transform: [ + Translation3D { + translate: Qt.vector3d(0, -5, 0) + } + ] + } + + Teapot { + scale: 0.5 + + effect: Effect { + color: "#ffffaa" + decal: true + } + + transform: [ + Translation3D { + translate: Qt.vector3d(0.0, -0.85, 0.0) + } + ] + } +} diff --git a/examples/sensors/cubehouse/Table.qml b/examples/sensors/cubehouse/Table.qml new file mode 100644 index 00000000..147810ad --- /dev/null +++ b/examples/sensors/cubehouse/Table.qml @@ -0,0 +1,50 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtSensors module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.0 +import Qt3D 1.0 +import Qt3D.Shapes 1.0 +import "." + +Item3D { + id: table + scale: 1 + mesh: Mesh { source: "mesh/table.3ds" } +} diff --git a/examples/sensors/cubehouse/camera.cpp b/examples/sensors/cubehouse/camera.cpp deleted file mode 100644 index 2a770e87..00000000 --- a/examples/sensors/cubehouse/camera.cpp +++ /dev/null @@ -1,1051 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "camera.h" -#include -#include - -/*! - \class Camera - \brief The Camera class defines the projection to apply to simulate a camera's position, orientation, and optics. - \since 4.7 - \ingroup qt3d - \ingroup qt3d::viewing - - \section1 Modelview and projection transformations - - A Camera instance is applied to the scene in two phases: - modelview transformation and projection transformation. - - During the modelview transformation, the eye(), center(), and - upVector() are used to generate a 4x4 transformation matrix that - reflects the viewer's current position and orientation. - - During the projection transformation, the projectionType(), - nearPlane(), farPlane(), fieldOfView(), and viewSize() are used - to define a viewing volume as a 4x4 transformation matrix. - - The modelview transformation matrix is returned by modelViewMatrix(). - The projection transformation matrix is returned by projectionMatrix(). - - \section1 Positioning and orienting the view - - The viewer position and orientation are defined by eye(), center(), - and upVector(). The location of the viewer in world co-ordinates is - given by eye(), the viewer is looking at the object of interest located - at center(), and the upVector() specifies the direction that should - be considered "up" with respect to the viewer. - - The vector from the eye() to the center() is called the "view vector", - and the cross-product of the view vector and upVector() is called - the "side vector". The view vector specifies the direction the - viewer is looking, and the side vector points off to the right of - the viewer. - - It is recommended that the view vector and upVector() be at right angles - to each other, but this is not required as long as the angle between - them is close to 90 degrees. - - The most common use of view and up vectors that are not at right angles - is to simulate a human eye at a specific height above the ground looking - down at a lower object or up at a higher object. In this case, the - the view vector will not be true horizontal, but the upVector() indicating - the human's upright stance will be true vertical. - - \section1 Zooming the camera image - - There are two ways to zoom the image seen through the camera: either - the camera eye() position can be moved closer to the object of interest, - or the field of view of the camera lens can be changed to make it appear - as though the object is moving closer. - - Changing the eye() position changes the lighting calculation in the - scene because the viewer is in a different position, changing the - angle of light reflection on the object's surface. - - The setFieldOfView() function can be used to simulate the effect of a - camera lens. The smaller the fieldOfView(), the closer the object - will appear. The lighting calculation will be the same as for the - unzoomed scene. - - If fieldOfView() is zero, then a standard perspective frustum of - viewSize() is used to define the viewing volume. The viewSize() - can be adjusted with setViewSize() to zoom the view. A smaller - viewSize() will make the the object appear closer. - - The fieldOfView() or viewSize() is applied as part of the - projectionMatrix(). - -\section1 Rotating the viewer or object of interest - -Rotating a viewer in 3D space is a very delicate process. It is very -easy to construct the rotation incorrectly and end up in a "gimbal lock" -state where further rotations are impossible in certain directions. - -To help alleviate this problem, Camera uses a quaternion-based -approach to generate rotations. A quaternion is a compact representation -of a rotation in 3D space. Rotations can be combined through quaternion -multiplication. More information on quaternions can be found in the -documentation for QQuaternion. - -Before rotating the view, you should first decide the type -of rotation you want to perform: - -\list -\i Tilting or panning a fixed eye to reveal the scene in different -directions and orientations. This is equivalent to mounting a camera -on a fixed tripod and then adjusting the direction of view and -orientation with the tripod controls. -\i Rotating a moving viewer about the object of interest. This is -equivalent to moving the viewer around the object at a fixed distance, - but with the viewer always pointing at the object. - \endlist - - In the Camera class, the first type of rotation is performed with - rotateEye() and the second with rotateCenter(). Each of these functions - take a quaternion argument that defines the type of rotation to perform. - - The tilt(), pan(), and roll() functions return values that can help with - constructing the rotation quaternions to pass to rotateEye() and - rotateCenter(). Tilt and pan are also known as "pitch" and "yaw" in - flight dynamics. - -Three axes of rotation are used to compute the quaternions. The tilt() -quaternion is computed with respect to the side vector, the pan() -quaterion is computed with respect to the upVector(), and the roll() -quaternion is computed with respect to the view vector. - -The following example tilts the direction the eye() is pointing -by 5 degrees, and then pans by 45 degrees: - -\code -camera.rotateEye(camera.tilt(5)); -camera.rotateEye(camera.pan(45)); -\endcode - -The next example performs the two rotations in a single fluid step -(note that the rotation to be performed first is multiplied last): - - \code - camera.rotateEye(camera.pan(45) * camera.tilt(5)); - \endcode - - These two examples will not produce the same visual result, even though -it looks like they might. In the first example, the upVector() is tilted -before the pan() quaternion is computed. In the second example, the pan() -quaternion is computed using the original upVector(). - -This difference in behavior is useful in different situations. Some -applications may wish to perform all rotations relative to the original -viewer orientation, and other applications may wish to perform rotations -relative to the current viewer orientation. These application types -correspond to the second and first examples above. - -\section1 Moving the viewer or object of interest - -The simplest way to move the viewer or object of interest is to call -setEye() or setCenter() respectively and supply a new position in -world co-ordinates. However, this can lead to non-intuitive movements -if the viewer orientation is not aligned with the world co-ordinate axes. - -For example, subtracting 3 from the eye() x co-ordinate will appear to -move the eye left 3 units if the viewer orientation is aligned with the -world co-ordinate axes. But it will not appear to move the eye left 3 -units in any other orientation. - -The translation() function can be used to construct a translation -vector that is aligned with the viewer's current orientation. -Movement in the x direction will move along the side vector, movement in -the y direction will move along upVector(), and movement in the z -direction will move along the view vector. - -The translation() function is useful when implementing operations such -as "step left", "jump up", and so on where the movement should be -interpreted relative to the viewer's current orientation, not the -world co-ordinate axes, - - In other words, the following two lines of code are not equivalent - unless the view is oriented with the world co-ordinate axes: - - \code - camera.translateEye(camera.translation(x, y, z)); - - camera.translateEye(QVector3D(x, y, z)); - \endcode - - The following example translates the eye() position while - keeping the object of interest at the original center(): - - \code - camera.translateEye(camera.translation(x, y, z)); - \endcode - - The following example translates the object of interest at - center() while keeping the eye() position fixed: - - \code - camera.translateCenter(camera.translation(x, y, z)); - \endcode - -The following example translates both the eye() and the center() -by the same amount, which will maintain the original view vector. - -\code -QVector3D vector = camera.translation(x, y, z); -camera.translateEye(vector); -camera.translateCenter(vector); -\endcode - -It is important that the translation vector for center() be computed -before eye() is translated if both eye() and center() must move by the -same amount. The following code translates center() in the viewer -orientation after the eye() is translated: - -\code -camera.translateEye(camera.translation(x, y, z)); -camera.translateCenter(camera.translation(x, y, z)); -\endcode - -Translating both eye() and center() by the same amount can be used -to simulate sliding a viewer past a scene while always looking in the -same direction (for example, filming a scene from a moving vehicle). -An alternative is to fix the viewer and move the scene itself: -the negation of the translation() vector can be applied to the -scene's modelview transformation. - -\section1 Motion tracking - -Viewing of 3D scenes can be enhanced if there is some way to track -the motion of the viewer or the orientation of the display device. - -Applications can use setMotionAdjustment() to alter the position -of the camera to account for the viewer's motion. This indicates -the viewer's position relative to the center of the screen. -The motionAdjustment() vector is used to determine by how much -the camera position should be adjusted. The distance of the viewer -from the screen is ignored. - -On handheld devices that use accelerometers to determine the -orientation of the device, the down vector due to gravity -can be adjusted to serve as a motion tracking vector. - -The output of motion tracking hardware can be very noisy, - with minor fluctuations due to viewer twitch movements or - environmental factors. The application is responsible for - cleaning up the signal and removing these fluctuations before - setMotionAdjustment() is called. - */ - - class CameraPrivate -{ -public: - CameraPrivate(); - - Camera::ProjectionType projectionType; - qreal fieldOfView; - qreal nearPlane; - qreal farPlane; - QSizeF viewSize; - QSizeF minViewSize; - int screenRotation; - QVector3D eye; - QVector3D upVector; - QVector3D center; - QVector3D viewVector; - qreal eyeSeparation; - QVector3D motionAdjustment; - QQuaternion motionQuaternion; - bool adjustForAspectRatio; -}; - -CameraPrivate::CameraPrivate() -: projectionType(Camera::Perspective), - fieldOfView(0.0f), - nearPlane(5.0f), - farPlane(1000.0f), - viewSize(2.0f, 2.0f), - minViewSize(0.0001f, 0.0001f), - screenRotation(0), - eye(0.0f, 0.0f, 10.0f), - upVector(0.0f, 1.0f, 0.0f), - center(0.0f, 0.0f, 0.0f), - viewVector(0.0f, 0.0f, -10.0f), - eyeSeparation(0.0f), - motionAdjustment(0.0f, 0.0f, 1.0f), - adjustForAspectRatio(true) -{ -} - -/*! - Constructs a Camera with the default properties and - attaches it to \a parent. -*/ -Camera::Camera(QObject *parent) -: QObject(parent), d_ptr(new CameraPrivate) -{ -} - -/*! - Destroys this Camera object. -*/ -Camera::~Camera() -{ - delete d_ptr; -} - -/*! - \enum Camera::ProjectionType - This enum defines the type of view projection to use for a Camera. - - \value Perspective Use a perspective view. - \value Orthographic Use an ortographic view. -*/ - -/*! - \property Camera::projectionType - \brief the projection type for this camera. The default is Perspective. -*/ -Camera::ProjectionType Camera::projectionType() const -{ - Q_D(const Camera); - return d->projectionType; -} - -void Camera::setProjectionType(Camera::ProjectionType value) -{ - Q_D(Camera); - if (d->projectionType != value) { - d->projectionType = value; - emit projectionChanged(); - } -} - -/*! - \property Camera::fieldOfView - \brief the field of view in degrees for a perspective projection. - - The default value is zero, which indicates a standard perspective - frustum view volume of viewSize() in size. If the value is not - zero, then viewSize() is ignored. - - This value is ignored if projectionType() is Orthographic. - - \sa viewSize() -*/ -qreal Camera::fieldOfView() const -{ - Q_D(const Camera); - return d->fieldOfView; -} - -void Camera::setFieldOfView(qreal angle) -{ - Q_D(Camera); - if (d->fieldOfView != angle) { - d->fieldOfView = angle; - emit projectionChanged(); - } -} - -/*! - \property Camera::nearPlane - \brief the distance from the eye to the near clipping plane. - The default value is 5. - - \sa farPlane() -*/ -qreal Camera::nearPlane() const -{ - Q_D(const Camera); - return d->nearPlane; -} - -void Camera::setNearPlane(qreal value) -{ - Q_D(Camera); - if (d->nearPlane != value) { - d->nearPlane = value; - emit projectionChanged(); - } -} - -/*! - \property Camera::farPlane - \brief the distance from the eye to the far clipping plane. - The default value is 1000. - - \sa nearPlane() -*/ -qreal Camera::farPlane() const -{ - Q_D(const Camera); - return d->farPlane; -} - -void Camera::setFarPlane(qreal value) -{ - Q_D(Camera); - if (d->farPlane != value) { - d->farPlane = value; - emit projectionChanged(); - } -} - -/*! - \property Camera::viewSize - \brief the size of the front of the projection viewing volume. - The viewing volume is assumed to be centered on the origin. - - The default value is (2, 2), which indicates a viewing volume front - from (-1, -1) to (1, 1). - - If the width or height of the viewing volume is negative, then the - co-ordinates will be swapped. For example, a size of (2, -2) will - flip the vertical axis upside down for a viewing volume from - (-1, 1) to (1, -1). - - The view size will be further adjusted by the window's aspect ratio - when projectionMatrix() is called. For best results, the width and - height of the view size should be the same to define an ideal square - viewing volume, which is then extended to the final viewing volume - width and height based on the window's aspect ratio. - - \sa projectionMatrix(), minViewSize() -*/ -QSizeF Camera::viewSize() const -{ - Q_D(const Camera); - return d->viewSize; -} - -void Camera::setViewSize(const QSizeF& size) -{ - Q_D(Camera); - QSizeF sz(size); - if (sz.width() < d->minViewSize.width()) - sz.setWidth(d->minViewSize.width()); - if (sz.height() < d->minViewSize.height()) - sz.setHeight(d->minViewSize.height()); - if (d->viewSize != sz) { - d->viewSize = sz; - emit projectionChanged(); - } -} - -/*! - \property Camera::minViewSize - \brief the minimum size of the front of the projection viewing volume. - - The minimum view size is used to clamp viewSize() when zooming - the camera closer to an object to prevent it "passing through" - the object and causing the scale factor to become infinite. - - The default value is (0.0001, 0.0001). - - \sa projectionMatrix(), viewSize() -*/ -QSizeF Camera::minViewSize() const -{ - Q_D(const Camera); - return d->minViewSize; -} - -void Camera::setMinViewSize(const QSizeF& size) -{ - Q_D(Camera); - if (d->viewSize != size) { - d->viewSize = size; - emit projectionChanged(); - } -} - -/*! - \property Camera::screenRotation - \brief the screen rotation angle in degrees. The default - value is 0. If this value is 90 or 270, then the view - will be flipped width for height. The only supported values - are 0, 90, 180, and 270. The screen is rotated around the - positive z axis. - - This setting is intended for simple screen rotations on handheld - devices that can be held in either portrait or landscape orientations. - The entire screen image is rotated so that it can be viewed in a - different device orientation. - - Use rotateEye() or rotateCenter() for more complex rotations - that are not aligned with 0, 90, 180, or 270 degrees. -*/ -int Camera::screenRotation() const -{ - Q_D(const Camera); - return d->screenRotation; -} - -void Camera::setScreenRotation(int angle) -{ - Q_D(Camera); - if (d->screenRotation != angle) { - d->screenRotation = angle; - emit projectionChanged(); - } -} - -/*! - \property Camera::xEye - \brief the x position of the viewer's eye. The default value is 0. - - \sa eye(), translateEye(), upVector(), center(), eyeSeparation() - \sa motionAdjustment() -*/ -qreal Camera::xEye() const -{ - Q_D(Camera); - return d->eye.x(); -} - -void Camera::setXEye(qreal value) -{ - Q_D(Camera); - d->eye.setX(value); - emit viewChanged(); -} - -/*! - \property Camera::yEye - \brief the y position of the viewer's eye. The default value is 0. - - \sa eye(), translateEye(), upVector(), center(), eyeSeparation() - \sa motionAdjustment() -*/ -qreal Camera::yEye() const -{ - Q_D(Camera); - return d->eye.y(); -} - -void Camera::setYEye(qreal value) -{ - Q_D(Camera); - d->eye.setY(value); - emit viewChanged(); -} - -/*! - \property Camera::zEye - \brief the z position of the viewer's eye. The default value is 10. - - \sa eye(), translateEye(), upVector(), center(), eyeSeparation() - \sa motionAdjustment() -*/ -qreal Camera::zEye() const -{ - Q_D(Camera); - return d->eye.z(); -} - -void Camera::setZEye(qreal value) -{ - Q_D(Camera); - d->eye.setZ(value); - emit viewChanged(); -} - -/*! - \property Camera::eye - \brief the position of the viewer's eye. The default value is (0, 0, 10). - - \sa translateEye(), upVector(), center(), eyeSeparation() - \sa motionAdjustment() -*/ -QVector3D Camera::eye() const -{ - Q_D(const Camera); - return d->eye; -} - -void Camera::setEye(const QVector3D& vertex) -{ - Q_D(Camera); - if (d->eye != vertex) { - d->eye = vertex; - d->viewVector = d->center - d->eye; - emit viewChanged(); - } -} - -/*! - Adjusts the position of the viewer's eye by the components of \a vector. - The final position is eye() + \a vector. - - \sa eye(), setEye(), translateCenter() -*/ -void Camera::translateEye(const QVector3D& vector) -{ - Q_D(Camera); - d->eye += vector; - d->viewVector = d->center - d->eye; - emit viewChanged(); -} - -/*! - \property Camera::upVector - \brief the up vector for the viewer. The default value is (0, 1, 0). - - \sa eye(), center() -*/ -QVector3D Camera::upVector() const -{ - Q_D(const Camera); - return d->upVector; -} - -void Camera::setUpVector(const QVector3D& vector) -{ - Q_D(Camera); - if (d->upVector != vector) { - d->upVector = vector; - emit viewChanged(); - } -} - -/*! - \property Camera::xCentre - \brief the x position of the center of the view visible from the viewer's - position. The default value is 0. - - \sa eye(), translateEye(), upVector(), center(), eyeSeparation() - \sa motionAdjustment() -*/ -qreal Camera::xCentre() const -{ - Q_D(Camera); - return d->center.x(); -} - -void Camera::setXCentre(qreal value) -{ - Q_D(Camera); - d->center.setX(value); - emit viewChanged(); -} - -/*! - \property Camera::yCentre - \brief the y position of the center of the view visible from the - viewer's position. The default value is 0. - - \sa eye(), translateEye(), upVector(), center(), eyeSeparation() - \sa motionAdjustment() -*/ -qreal Camera::yCentre() const -{ - Q_D(Camera); - return d->center.y(); -} - -void Camera::setYCentre(qreal value) -{ - Q_D(Camera); - d->center.setY(value); - emit viewChanged(); -} - -/*! - \property Camera::zCentre - \brief the z position of the center of the view visible from the - viewer's position. The default value is 0. - - \sa eye(), translateEye(), upVector(), center(), eyeSeparation() - \sa motionAdjustment() -*/ -qreal Camera::zCentre() const -{ - Q_D(Camera); - return d->center.z(); -} - -void Camera::setZCentre(qreal value) -{ - Q_D(Camera); - d->center.setZ(value); - emit viewChanged(); -} - -/*! - \property Camera::center - \brief the center of the view visible from the viewer's position. - The default value is (0, 0, 0). - - \sa translateCenter(), eye(), upVector() -*/ -QVector3D Camera::center() const -{ - Q_D(const Camera); - return d->center; -} - -void Camera::setCenter(const QVector3D& vertex) -{ - Q_D(Camera); - if (d->center != vertex) { - d->center = vertex; - d->viewVector = d->center - d->eye; - emit viewChanged(); - } -} - -/*! - Adjusts the center of the view by the components of \a vector. - The final position is center() + \a vector. - - \sa center(), setCenter(), translateEye() -*/ -void Camera::translateCenter(const QVector3D& vector) -{ - Q_D(Camera); - d->center += vector; - d->viewVector = d->center - d->eye; - emit viewChanged(); -} - -/*! - \property Camera::eyeSeparation - \brief the separation between the eyes when stereo viewing is in use, - with eye() specifying the mid-point between the eyes. The default - value is 0. - - \sa eye() -*/ -qreal Camera::eyeSeparation() const -{ - Q_D(const Camera); - return d->eyeSeparation; -} - -void Camera::setEyeSeparation(qreal value) -{ - Q_D(Camera); - if (d->eyeSeparation != value) { - d->eyeSeparation = value; - emit viewChanged(); - } -} - -/*! - \property Camera::motionAdjustment - \brief the adjustment vector to apply to the eye() for user motion. - - This property is typically used to implement motion tracking. - It is interpreted as a vector from the center of the screen to the - current position of the viewer. The angle between the motion - adjustment vector and the screen center is used to adjust the - position of the eye() when apply() is called. - - The default value is (0, 0, 1), which indicates a viewer - directly in front of the center of the screen. - - The units for the vector are unspecified. They could be - meters, centimeters, or the force due to gravity in various - directions from an accelerometer. The angle defined - by the vector is used to perform the adjustment, not its - magnitude. - - The output of motion tracking hardware can be very noisy, - with minor fluctuations due to viewer twitch movements or - environmental factors. The application is responsible for - cleaning up the signal and removing these fluctuations before - altering this property. - - \sa eye(), apply() -*/ - -QVector3D Camera::motionAdjustment() const -{ - Q_D(const Camera); - return d->motionAdjustment; -} - -void Camera::setMotionAdjustment(const QVector3D& vector) -{ - Q_D(Camera); - if (d->motionAdjustment != vector) { - d->motionAdjustment = vector; - if (vector.x() == 0.0f && vector.y() == 0.0f) { - // If the vector is centered, then don't perform any rotations. - d->motionQuaternion = QQuaternion(); - } else { - // Determine the pan and tilt angles from the vector. - QVector3D view = -vector.normalized(); - if (view.z() < 0.0f) - view = -view; - qreal xangle = asin(view.x()) * 180.0f / M_PI; - qreal yangle = asin(-view.y()) * 180.0f / M_PI; - - // Construct the pan and tilt quaternions. - if (qFuzzyIsNull(xangle)) - d->motionQuaternion = tilt(yangle); - else if (qFuzzyIsNull(yangle)) - d->motionQuaternion = pan(xangle); - else - d->motionQuaternion = tilt(yangle) * pan(xangle); - } - emit viewChanged(); - } -} - -/*! - \property Camera::adjustForAspectRatio - \brief the adjustment state of the aspect ratio in the viewing volume. - - By default, Camera adjusts the viewing volume for the aspect - ratio of the window so that pixels appear square without the - application needing to adjust viewSize() manually. - - If this property is false, then the aspect ratio adjustment is - not performed. -*/ - -bool Camera::adjustForAspectRatio() const -{ - Q_D(const Camera); - return d->adjustForAspectRatio; -} - -void Camera::setAdjustForAspectRatio(bool value) -{ - Q_D(Camera); - if (d->adjustForAspectRatio != value) { - d->adjustForAspectRatio = value; - emit viewChanged(); - } -} - -/*! - Returns the quaternion corresponding to tilting the view up or - down by \a angle degrees. The returned quaternion can be applied to - the eye() position with rotateEye() or to the center() position with - rotateCenter(). - - \sa pan(), roll(), rotateEye(), rotateCenter() -*/ -QQuaternion Camera::tilt(qreal angle) const -{ - Q_D(const Camera); - QVector3D side = QVector3D::crossProduct(d->viewVector, d->upVector); - return QQuaternion::fromAxisAndAngle(side, angle); -} - -/*! - Returns the quaternion corresponding to panning the view left or - right by \a angle degrees. The returned quaternion can be applied to - the eye() position with rotateEye() or to the center() position with - rotateCenter(). - - \sa tilt(), roll(), rotateEye(), rotateCenter() -*/ -QQuaternion Camera::pan(qreal angle) const -{ - Q_D(const Camera); - return QQuaternion::fromAxisAndAngle(d->upVector, angle); -} - -/*! - Returns the quaternion corresponding to rolling the view left or - right by \a angle degrees. The returned quaternion can be applied to - the eye() position with rotateEye() or to the center() position with - rotateCenter(). - - \sa tilt(), pan(), rotateEye(), rotateCenter() -*/ -QQuaternion Camera::roll(qreal angle) const -{ - Q_D(const Camera); - return QQuaternion::fromAxisAndAngle(d->viewVector, angle); -} - -/*! - Rotates the orientation of the eye() according to the quaternion \a q. - The eye() will remain in the same position, but the upVector() and - center() may be altered by the rotation. - - \sa rotateCenter(), tilt(), pan(), roll() -*/ -void Camera::rotateEye(const QQuaternion& q) -{ - Q_D(Camera); - d->upVector = q.rotatedVector(d->upVector); - d->viewVector = q.rotatedVector(d->viewVector); - d->center = d->eye + d->viewVector; - emit viewChanged(); -} - -/*! - Rotates the position and orientation of the eye() around center() - according to the quaternion \a q. The center() will remain in the - same position, but the upVector() and eye() may be altered by - the rotation. - - \sa rotateEye(), tilt(), pan(), roll() -*/ -void Camera::rotateCenter(const QQuaternion& q) -{ - Q_D(Camera); - d->upVector = q.rotatedVector(d->upVector); - d->viewVector = q.rotatedVector(d->viewVector); - d->eye = d->center - d->viewVector; - emit viewChanged(); -} - -/*! - Returns a translation vector that can be used to adjust the eye() - or center() by \a x units side-ways, \a y units up, - and \a z units forwards. - - This function is useful when implementing operations such as - "step left", "jump up", and so on where the movement should be - interpreted relative to the viewer's current orientation, not the - world co-ordinate axes, - - The translation vector can be applied to eye() or center() by - calling translateEye() or translateCenter() respectively. - - \sa translateEye(), translateCenter() -*/ -QVector3D Camera::translation(qreal x, qreal y, qreal z) const -{ - Q_D(const Camera); - QVector3D vector(0.0f, 0.0f, 0.0f); - if (x != 0.0f) - vector += QVector3D::normal(d->viewVector, d->upVector) * x; - if (y != 0.0f) - vector += d->upVector.normalized() * y; - if (z != 0.0f) - vector += d->viewVector.normalized() * z; - return vector; -} - -/*! - Returns the transformation matrix to apply to the projection matrix - to present the scene as viewed from the camera position. - - The \a aspectRatio specifies the aspect ratio of the window the - camera view is being displayed in. An \a aspectRatio of 1 indicates that - the window is square. An \a aspectRatio greater than 1 indicates that - the window is wider than it is high. An \a aspectRatio less than 1 - indicates that the window is higher than it is wide. - - \sa apply(), modelViewMatrix() -*/ -QMatrix4x4 Camera::projectionMatrix(qreal aspectRatio) const -{ - Q_D(const Camera); - QMatrix4x4 m; - if (!d->adjustForAspectRatio) - aspectRatio = 1.0f; - if (d->screenRotation != 0) { - m.rotate((qreal)(d->screenRotation), 0.0f, 0.0f, 1.0f); - if (d->screenRotation == 90 || d->screenRotation == 270) { - if (aspectRatio != 0.0f) - aspectRatio = 1.0f / aspectRatio; - } - } - if (d->projectionType == Perspective && d->fieldOfView != 0.0f) { - m.perspective(d->fieldOfView, aspectRatio, - d->nearPlane, d->farPlane); - } else { - qreal halfWidth = d->viewSize.width() / 2.0f; - qreal halfHeight = d->viewSize.height() / 2.0f; - if (aspectRatio > 1.0f) { - halfWidth *= aspectRatio; - } else if (aspectRatio > 0.0f && aspectRatio < 1.0f) { - halfHeight /= aspectRatio; - } - if (d->projectionType == Perspective) { - m.frustum(-halfWidth, halfWidth, -halfHeight, halfHeight, - d->nearPlane, d->farPlane); - } else { - m.ortho(-halfWidth, halfWidth, -halfHeight, halfHeight, - d->nearPlane, d->farPlane); - } - } - return m; -} - -/*! - Returns the transformation to apply to the modelview matrix - to present the scene as viewed from the eye() position. - - \sa apply(), projectionMatrix() -*/ -QMatrix4x4 Camera::modelViewMatrix() const -{ - Q_D(const Camera); - QMatrix4x4 m; - if (d->motionQuaternion.isIdentity()) { - m.lookAt(d->eye, d->center, d->upVector); - } else { - QVector3D up = d->motionQuaternion.rotatedVector(d->upVector); - QVector3D view = d->motionQuaternion.rotatedVector(d->viewVector); - QVector3D eye = d->center - view; - m.lookAt(eye, d->center, up); - } - return m; -} - -/*! - \fn void Camera::projectionChanged() - - This signal is emitted when one of projectionType(), fieldOfView(), - nearPlane(), farPlane(), viewSize(), or screenRotation() changes, - indicating a modification to the optical properties of the camera - looking at the scene. - - \sa viewChanged() -*/ - -/*! - \fn void Camera::viewChanged() - - This signal is emitted when one of eye(), upVector(), or center() - changes, indicating a modification to the viewer's position or - orientation. - - \sa projectionChanged() -*/ diff --git a/examples/sensors/cubehouse/camera.h b/examples/sensors/cubehouse/camera.h deleted file mode 100644 index ea943b50..00000000 --- a/examples/sensors/cubehouse/camera.h +++ /dev/null @@ -1,166 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CAMERA_H -#define CAMERA_H - -#include -#include -#include -#include -#include - -class CameraPrivate; -class QGLPainter; - -class Camera : public QObject -{ - Q_OBJECT - Q_ENUMS(ProjectionType) - Q_PROPERTY(ProjectionType projectionType READ projectionType WRITE setProjectionType NOTIFY projectionChanged) - Q_PROPERTY(qreal fieldOfView READ fieldOfView WRITE setFieldOfView NOTIFY projectionChanged) - Q_PROPERTY(qreal nearPlane READ nearPlane WRITE setNearPlane NOTIFY projectionChanged) - Q_PROPERTY(qreal farPlane READ farPlane WRITE setFarPlane NOTIFY projectionChanged) - Q_PROPERTY(QSizeF viewSize READ viewSize WRITE setViewSize NOTIFY projectionChanged) - Q_PROPERTY(QSizeF minViewSize READ minViewSize WRITE setMinViewSize NOTIFY projectionChanged) - Q_PROPERTY(int screenRotation READ screenRotation WRITE setScreenRotation NOTIFY projectionChanged) - Q_PROPERTY(qreal xEye READ xEye WRITE setXEye NOTIFY viewChanged) - Q_PROPERTY(qreal yEye READ yEye WRITE setYEye NOTIFY viewChanged) - Q_PROPERTY(qreal zEye READ zEye WRITE setZEye NOTIFY viewChanged) - Q_PROPERTY(QVector3D eye READ eye WRITE setEye NOTIFY viewChanged) - Q_PROPERTY(QVector3D upVector READ upVector WRITE setUpVector NOTIFY viewChanged) - Q_PROPERTY(qreal xCentre READ xCentre WRITE setXCentre NOTIFY viewChanged) - Q_PROPERTY(qreal yCentre READ yCentre WRITE setYCentre NOTIFY viewChanged) - Q_PROPERTY(qreal zCentre READ zCentre WRITE setZCentre NOTIFY viewChanged) - Q_PROPERTY(QVector3D center READ center WRITE setCenter NOTIFY viewChanged) - Q_PROPERTY(qreal eyeSeparation READ eyeSeparation WRITE setEyeSeparation NOTIFY viewChanged) - Q_PROPERTY(QVector3D motionAdjustment READ motionAdjustment WRITE setMotionAdjustment DESIGNABLE false NOTIFY viewChanged) - Q_PROPERTY(bool adjustForAspectRatio READ adjustForAspectRatio WRITE setAdjustForAspectRatio NOTIFY viewChanged) -public: - explicit Camera(QObject *parent = 0); - ~Camera(); - - enum ProjectionType - { - Perspective, - Orthographic - }; - - Camera::ProjectionType projectionType() const; - void setProjectionType(Camera::ProjectionType value); - - qreal fieldOfView() const; - void setFieldOfView(qreal angle); - - qreal nearPlane() const; - void setNearPlane(qreal value); - - qreal farPlane() const; - void setFarPlane(qreal value); - - QSizeF viewSize() const; - void setViewSize(const QSizeF& size); - - QSizeF minViewSize() const; - void setMinViewSize(const QSizeF& size); - - int screenRotation() const; - void setScreenRotation(int angle); - - qreal xEye() const; - void setXEye(qreal value); - qreal yEye() const; - void setYEye(qreal value); - qreal zEye() const; - void setZEye(qreal value); - - QVector3D eye() const; - void setEye(const QVector3D& vertex); - - QVector3D upVector() const; - void setUpVector(const QVector3D& vector); - - qreal xCentre() const; - void setXCentre(qreal value); - qreal yCentre() const; - void setYCentre(qreal value); - qreal zCentre() const; - void setZCentre(qreal value); - - QVector3D center() const; - void setCenter(const QVector3D& vertex); - - qreal eyeSeparation() const; - void setEyeSeparation(qreal value); - - QVector3D motionAdjustment() const; - void setMotionAdjustment(const QVector3D& vector); - - bool adjustForAspectRatio() const; - void setAdjustForAspectRatio(bool value); - - QQuaternion tilt(qreal angle) const; - QQuaternion pan(qreal angle) const; - QQuaternion roll(qreal angle) const; - - void rotateEye(const QQuaternion& q); - void rotateCenter(const QQuaternion& q); - - QVector3D translation(qreal x, qreal y, qreal z) const; - - void translateEye(const QVector3D& vector); - void translateCenter(const QVector3D& vector); - - QMatrix4x4 projectionMatrix(qreal aspectRatio) const; - QMatrix4x4 modelViewMatrix() const; - -Q_SIGNALS: - void projectionChanged(); - void viewChanged(); - -private: - CameraPrivate *d_ptr; - - CameraPrivate *d_func() const { return d_ptr; } - - Q_DISABLE_COPY(Camera) -}; - -#endif diff --git a/examples/sensors/cubehouse/cube.h b/examples/sensors/cubehouse/cube.h deleted file mode 100644 index 82b956ac..00000000 --- a/examples/sensors/cubehouse/cube.h +++ /dev/null @@ -1,89 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CUBE_H -#define CUBE_H - -#define CUBE_SIZE (6 * 6 * (3 + 3 + 2)) -static float const cubeVertices[CUBE_SIZE] = { - -0.5f, -0.5f, -0.5f, -1.0f, 0.0f, 0.0f, 1.0f, 0.0f, - -0.5f, -0.5f, 0.5f, -1.0f, 0.0f, 0.0f, 1.0f, 1.0f, - -0.5f, 0.5f, 0.5f, -1.0f, 0.0f, 0.0f, 0.0f, 1.0f, - -0.5f, -0.5f, -0.5f, -1.0f, 0.0f, 0.0f, 1.0f, 0.0f, - -0.5f, 0.5f, 0.5f, -1.0f, 0.0f, 0.0f, 0.0f, 1.0f, - -0.5f, 0.5f, -0.5f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, - - -0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, - -0.5f, 0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, - 0.5f, 0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, - -0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, - 0.5f, 0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, - 0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, - - 0.5f, 0.5f, -0.5f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, - 0.5f, 0.5f, 0.5f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, - 0.5f, -0.5f, 0.5f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, - 0.5f, 0.5f, -0.5f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, - 0.5f, -0.5f, 0.5f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, - 0.5f, -0.5f, -0.5f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, - - 0.5f, -0.5f, -0.5f, 0.0f, -1.0f, 0.0f, 1.0f, 0.0f, - 0.5f, -0.5f, 0.5f, 0.0f, -1.0f, 0.0f, 1.0f, 1.0f, - -0.5f, -0.5f, 0.5f, 0.0f, -1.0f, 0.0f, 0.0f, 1.0f, - 0.5f, -0.5f, -0.5f, 0.0f, -1.0f, 0.0f, 1.0f, 0.0f, - -0.5f, -0.5f, 0.5f, 0.0f, -1.0f, 0.0f, 0.0f, 1.0f, - -0.5f, -0.5f, -0.5f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, - - 0.5f, -0.5f, 0.5f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, - 0.5f, 0.5f, 0.5f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, - -0.5f, 0.5f, 0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, - 0.5f, -0.5f, 0.5f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, - -0.5f, 0.5f, 0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, - -0.5f, -0.5f, 0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, - - 0.5f, 0.5f, -0.5f, 0.0f, 0.0f, -1.0f, 1.0f, 0.0f, - 0.5f, -0.5f, -0.5f, 0.0f, 0.0f, -1.0f, 1.0f, 1.0f, - -0.5f, -0.5f, -0.5f, 0.0f, 0.0f, -1.0f, 0.0f, 1.0f, - 0.5f, 0.5f, -0.5f, 0.0f, 0.0f, -1.0f, 1.0f, 0.0f, - -0.5f, -0.5f, -0.5f, 0.0f, 0.0f, -1.0f, 0.0f, 1.0f, - -0.5f, 0.5f, -0.5f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f -}; - -#endif diff --git a/examples/sensors/cubehouse/cubehouse.pro b/examples/sensors/cubehouse/cubehouse.pro deleted file mode 100644 index 5fb289a1..00000000 --- a/examples/sensors/cubehouse/cubehouse.pro +++ /dev/null @@ -1,31 +0,0 @@ -TEMPLATE = app -TARGET = cubehouse -CONFIG += qt debug warn_on -requires(contains(QT_CONFIG,opengl)) -QT += opengl sensors widgets -SOURCES = \ - view.cpp \ - main.cpp \ - camera.cpp \ - light.cpp \ - lightmodel.cpp \ - material.cpp \ - painter.cpp -HEADERS = \ - view.h \ - teapot.h \ - cube.h \ - camera.h light.h \ - lightmodel.h \ - material.h \ - painter.h -contains(QT_CONFIG,opengles2) { - SOURCES += painter_shader.cpp -} else { - SOURCES += painter_fixed.cpp -} -RESOURCES = cubehouse.qrc - -symbian { - TARGET.CAPABILITY = ReadUserData -} diff --git a/examples/sensors/cubehouse/cubehouse.qmlproject b/examples/sensors/cubehouse/cubehouse.qmlproject new file mode 100644 index 00000000..354650f7 --- /dev/null +++ b/examples/sensors/cubehouse/cubehouse.qmlproject @@ -0,0 +1,20 @@ +/* File generated by Qt Creator, version 2.2.0 */ + +import QmlProject 1.1 + +Project { + mainFile: "Cubehouse.qml" + + /* Include .qml, .js, and image files from current directory and subdirectories */ + QmlFiles { + directory: "." + } + JavaScriptFiles { + directory: "." + } + ImageFiles { + directory: "./images" + } + /* List of plugin directories passed to QML runtime */ + // importPaths: [ "../exampleplugin" ] +} diff --git a/examples/sensors/cubehouse/cubehouse.qrc b/examples/sensors/cubehouse/cubehouse.qrc deleted file mode 100644 index 94b5ae67..00000000 --- a/examples/sensors/cubehouse/cubehouse.qrc +++ /dev/null @@ -1,8 +0,0 @@ - - - qtlogo.png - lighting.vsh - material.fsh - texture.fsh - - diff --git a/examples/sensors/cubehouse/icon.png b/examples/sensors/cubehouse/icon.png new file mode 100644 index 00000000..193ad561 Binary files /dev/null and b/examples/sensors/cubehouse/icon.png differ diff --git a/examples/sensors/cubehouse/images/ground.jpg b/examples/sensors/cubehouse/images/ground.jpg new file mode 100644 index 00000000..2664b99e Binary files /dev/null and b/examples/sensors/cubehouse/images/ground.jpg differ diff --git a/examples/sensors/cubehouse/images/qtlogo.png b/examples/sensors/cubehouse/images/qtlogo.png new file mode 100644 index 00000000..7d3e97eb Binary files /dev/null and b/examples/sensors/cubehouse/images/qtlogo.png differ diff --git a/examples/sensors/cubehouse/images/roof.jpg b/examples/sensors/cubehouse/images/roof.jpg new file mode 100644 index 00000000..53a35d64 Binary files /dev/null and b/examples/sensors/cubehouse/images/roof.jpg differ diff --git a/examples/sensors/cubehouse/images/wall.jpg b/examples/sensors/cubehouse/images/wall.jpg new file mode 100644 index 00000000..7c56e23f Binary files /dev/null and b/examples/sensors/cubehouse/images/wall.jpg differ diff --git a/examples/sensors/cubehouse/info.json b/examples/sensors/cubehouse/info.json new file mode 100644 index 00000000..effbfb06 --- /dev/null +++ b/examples/sensors/cubehouse/info.json @@ -0,0 +1,14 @@ +{ + "info-version": "1.0", + "dict": { + "Category": "application", + "Runtime": "qml", + "DisplayName": "Cubehouse", + "Subcategory": "utility", + "MainQML": "Cubehouse.qml", + "Version": "1.0", + "Identifier": "com.nokia.mt.cubehouse.demo", + "Summary": "Cubehouse using Accelerometer", + "Author": "Qt" + } +} diff --git a/examples/sensors/cubehouse/light.cpp b/examples/sensors/cubehouse/light.cpp deleted file mode 100644 index e5398045..00000000 --- a/examples/sensors/cubehouse/light.cpp +++ /dev/null @@ -1,675 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "light.h" -#include -#include - -/*! - \class Light - \brief The Light class represents the parameters of a light in a 3D scene. - \since 4.7 - \ingroup qt3d - \ingroup qt3d::painting - - The functions in this class are a convenience wrapper for the OpenGL enumerations - which control each light source in a 3D scene. For the general ambient light in a - scene, not from a source refer to QGLLightModel. - - The ambient, diffuse and specular components of the light can be controlled for by - colour, and are set by the following functions: - \list - \o setAmbientColor() - \o setDiffuseColor() - \o setSpecularColor() - \endlist - Other than changing intensity by using darker color values, see below for how to - change the intensity of the light with distance from the lit object. - - Light sources are of two types, directional and positional, described by the - enumeration Light::LightType. By default a light source is directional. - - A directional light source is infinitely distant, such that its rays are all - parallel, to a direction \bold vector. This vector is set by the setDirection() - function. If the light source is not directional when setDirection() is called, its - type is changed to Directional. Directional light sources model real world light - sources like the sun. Such light sources are not located at any particular point - and affect the scene evenly. - - In the OpenGL model-view, a directional light is represented by a 4d vector, with - the 4th value, \c w, set to 0.0f. This means that the spatial data of the light - is not changed during certain transformations, for example translation. - See \l {3D Math Basis} for a fuller explanation of this. - - Calling the setPosition() function defines the light source to be located at a given - \bold point, a finite distance from the lit object. If the light source is not - positional when this function is called its type is changed to Positional. - - A positional light source models a real world lamp, such as a light-bulb or - car headlight. Since it is a finite distance from the lit object the rays diverge - and lighting calculations are thus more complex. - - In OpenGL the light has its spatial data \c w value set to 1.0f, resulting in the - lights position being changed along with other objects in the scene by transformations - such as translation. See \l {3D Math Basis} for more. - - Positional lights are by default point sources, like the light-bulb where light - radiates in all directions. Calling the spotAngle() function sets an angle to - restrict the light from a positional source to a cone like the car headlight. This - makes the light behave like a spotlight, where objects outside of the cone of the - light do not receive any light from that source. - - The spotlight may be further specified by its spotExponent() which dictates the - behaviour of the cutoff at the lighting cone; and by the attenuation functions - which are the terms in the following equation: - \image attenuation.png - here \c d is the distance of the light from the lit object, and A is the attenuation - factor which is a multiplier of the light source, determining its intensity at the - lit object. The terms in the denominator are: - \list - \o constantAttenuation() - default 1.0 - \raw HTML - kc - \endraw - \o linearAttenuation() - default 0.0 - \raw HTML - kl - \endraw - \o quadraticAttenuation() - default 0.0 - \raw HTML - kq - \endraw - \endlist - When these terms are large the light contributed by the source becomes much weaker - with distance from the object. -*/ - -class LightPrivate -{ -public: - LightPrivate() : - type(Light::Directional), - position(0.0f, 0.0f, 1.0f), - ambientColor(0, 0, 0, 255), - diffuseColor(255, 255, 255, 255), - specularColor(255, 255, 255, 255), - spotDirection(0.0f, 0.0f, -1.0f), - spotExponent(0.0f), - spotAngle(180.0f), - spotCosAngle(-1.0f), - constantAttenuation(1.0f), - linearAttenuation(0.0f), - quadraticAttenuation(0.0f) - { - } - - Light::LightType type; - QVector3D position; - QColor ambientColor; - QColor diffuseColor; - QColor specularColor; - QVector3D spotDirection; - qreal spotExponent; - qreal spotAngle; - qreal spotCosAngle; - qreal constantAttenuation; - qreal linearAttenuation; - qreal quadraticAttenuation; -}; - - -/*! - \enum Light::LightType - This enum defines the possible types of light. - - \value Directional The default. Directional lights are infinitely - distant from the lit object, and its rays are parallel to a - direction vector. Use setDirection() to make a light Directional. - \value Positional Positional lights are a finite distance from the - lit object. Complex lighting with spot-lights, and attenuation - are enabled with Positional lighting. Use setPosition() to - make a light Positional. -*/ - -/*! - Constructs a new light parameters object with default values - and attaches it to \a parent. -*/ -Light::Light(QObject *parent) - : QObject(parent), d_ptr(new LightPrivate) -{ -} - -/*! - Destroys this light parameters object. -*/ -Light::~Light() -{ -} - -/*! - \property Light::type - \brief the type of this light; Positional or Directional. - - \sa position(), direction() -*/ -Light::LightType Light::type() const -{ - Q_D(const Light); - return d->type; -} - -/*! - \property Light::position - \brief the position of this light if it is Positional; or a null - QVector3D if it is Directional. By default, the light is Directional. - - For a Positional light, the return value is the location in model space - of the light, at some finite distance from the origin. The value is - transformed by the model-view transformation when the light - parameters are applied. - - When the light is Positional OpenGL will obey other parameters relating - to the light's position, such as attenuation and spot angle. - - Setting the position converts the light from Directional to Positional. - - \sa direction(), type(), positionChanged() -*/ -QVector3D Light::position() const -{ - Q_D(const Light); - if (d->type == Positional) - return d->position; - else - return QVector3D(); -} - -void Light::setPosition(const QVector3D& point) -{ - Q_D(Light); - if (d->type == Positional) { - if (d->position != point) { - // Only the position() has changed. - d->position = point; - emit positionChanged(); - emit lightChanged(); - } - } else { - // Both the position() and direction() are changed. - d->type = Positional; - d->position = point; - emit positionChanged(); - emit directionChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::direction - \brief the direction of this light if it is Directional; or a null - QVector3D if it is Positional. By default, the light is Directional. - - For a Directional light, the return value is the direction vector of - an infinitely distant directional light, like the sun. - - The default value is (0, 0, 1), for a directional light pointing along - the positive z-axis. - - OpenGL will ignore other parameters such as attenuation and spot angle - when this value is set, since a directional light has no location. - In order to set the direction of a spot light, use the setSpotDirection() - function. - - Setting the direction converts the light from Positional to Directional. - - \sa position(), type(), directionChanged() -*/ -QVector3D Light::direction() const -{ - Q_D(const Light); - if (d->type == Directional) - return d->position; - else - return QVector3D(); -} - -void Light::setDirection(const QVector3D& value) -{ - Q_D(Light); - if (d->type == Directional) { - if (d->position != value) { - // Only the direction() has changed. - d->position = value; - emit directionChanged(); - emit lightChanged(); - } - } else { - // Both the position() and direction() are changed. - d->type = Directional; - d->position = value; - emit positionChanged(); - emit directionChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::ambientColor - \brief the ambient color of this light. The default value is black. - - \sa diffuseColor(), specularColor(), ambientColorChanged() -*/ -QColor Light::ambientColor() const -{ - Q_D(const Light); - return d->ambientColor; -} - -void Light::setAmbientColor(const QColor& value) -{ - Q_D(Light); - if (d->ambientColor != value) { - d->ambientColor = value; - emit ambientColorChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::diffuseColor - \brief the diffuse color of this light. The default value is white. - - \sa ambientColor(), specularColor(), diffuseColorChanged() -*/ -QColor Light::diffuseColor() const -{ - Q_D(const Light); - return d->diffuseColor; -} - -void Light::setDiffuseColor(const QColor& value) -{ - Q_D(Light); - if (d->diffuseColor != value) { - d->diffuseColor = value; - emit diffuseColorChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::specularColor - \brief the specular color of this light. The default value is white. - - \sa ambientColor(), diffuseColor(), specularColorChanged() -*/ -QColor Light::specularColor() const -{ - Q_D(const Light); - return d->specularColor; -} - -void Light::setSpecularColor(const QColor& value) -{ - Q_D(Light); - if (d->specularColor != value) { - d->specularColor = value; - emit specularColorChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::spotDirection - \brief the direction that a spot-light is shining in. - - A spotlight is a positional light that has a value other than the default - for spot angle. The default value is (0, 0, -1). - - This parameter has no effect on a Directional light. - - \sa spotExponent(), spotDirectionChanged() -*/ -QVector3D Light::spotDirection() const -{ - Q_D(const Light); - return d->spotDirection; -} - -void Light::setSpotDirection(const QVector3D& vector) -{ - Q_D(Light); - if (d->spotDirection != vector) { - d->spotDirection = vector; - emit spotDirectionChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::spotExponent - \brief the exponent value between 0 and 128 that indicates the - intensity distribution of a spot-light. The default value is 0, - indicating uniform light distribution. - - This parameter has no effect on a Directional light. - - \sa spotAngle(), setPosition(), spotExponentChanged() -*/ -qreal Light::spotExponent() const -{ - Q_D(const Light); - return d->spotExponent; -} - -void Light::setSpotExponent(qreal value) -{ - Q_D(Light); - if (d->spotExponent != value) { - d->spotExponent = value; - emit spotExponentChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::spotAngle - \brief the angle over which light is spread from this light. - It should be between 0 and 90 for spot lights, and 180 for - uniform light distribution from a remote light source. - The default value is 180. - - This parameter has no effect on a Directional light. - - \sa spotCosAngle(), spotAngleChanged() -*/ -qreal Light::spotAngle() const -{ - Q_D(const Light); - return d->spotAngle; -} - -#ifndef M_PI -#define M_PI 3.14159265358979323846 -#endif - -void Light::setSpotAngle(qreal value) -{ - Q_D(Light); - if (d->spotAngle != value) { - d->spotAngle = value; - if (value != 180.0f) - d->spotCosAngle = qCos(value * M_PI / 180.0f); - else - d->spotCosAngle = -1.0f; - emit spotAngleChanged(); - emit lightChanged(); - } -} - -/*! - Returns the cosine of spotAngle(), or -1 if spotAngle() is 180. - - The cosine of spotAngle() is useful in lighting algorithms. - This function returns a cached copy of the cosine so that it - does not need to be computed every time the lighting parameters - are read. - - \sa spotAngle() -*/ -qreal Light::spotCosAngle() const -{ - Q_D(const Light); - return d->spotCosAngle; -} - -/*! - \property Light::constantAttenuation - \brief the constant light attenuation factor. The default value is 1. - - This parameter has no effect on a Directional light. - - \sa linearAttenuation(), quadraticAttenuation() - \sa constantAttenuationChanged() -*/ -qreal Light::constantAttenuation() const -{ - Q_D(const Light); - return d->constantAttenuation; -} - -void Light::setConstantAttenuation(qreal value) -{ - Q_D(Light); - if (d->constantAttenuation != value) { - d->constantAttenuation = value; - emit constantAttenuationChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::linearAttenuation - \brief the linear light attenuation factor. The default value is 0. - - This parameter has no effect on a Directional light. - - \sa constantAttenuation(), quadraticAttenuation() - \sa linearAttenuationChanged() -*/ -qreal Light::linearAttenuation() const -{ - Q_D(const Light); - return d->linearAttenuation; -} - -void Light::setLinearAttenuation(qreal value) -{ - Q_D(Light); - if (d->linearAttenuation != value) { - d->linearAttenuation = value; - emit linearAttenuationChanged(); - emit lightChanged(); - } -} - -/*! - \property Light::quadraticAttenuation - \brief the quadratic light attenuation factor. The default value is 0. - - This parameter has no effect on a Directional light. - - \sa constantAttenuation(), linearAttenuation() - \sa quadraticAttenuationChanged() -*/ -qreal Light::quadraticAttenuation() const -{ - Q_D(const Light); - return d->quadraticAttenuation; -} - -void Light::setQuadraticAttenuation(qreal value) -{ - Q_D(Light); - if (d->quadraticAttenuation != value) { - d->quadraticAttenuation = value; - emit quadraticAttenuationChanged(); - emit lightChanged(); - } -} - -/*! - Returns the position of this light after transforming it from - world co-ordinates to eye co-ordinates using \a transform. - - If the light is Directional, then direction() will be transformed, - after setting the w co-ordinate to 0. If the light is Positional, - then position() will be transformed after setting the w co-ordinate - to 1. - - The returned result is suitable to be applied to the GL_POSITION - property of \c{glLight()}, assuming that the modelview transformation - in the GL context is set to the identity. - - \sa eyeSpotDirection() -*/ -QVector4D Light::eyePosition(const QMatrix4x4& transform) const -{ - Q_D(const Light); - if (d->type == Directional) - return transform * QVector4D(d->position, 0.0f); - else - return transform * QVector4D(d->position, 1.0f); -} - -/*! - Returns the spotDirection() for this light after transforming it - from world co-ordinates to eye co-ordinates using the top-left - 3x3 submatrix within \a transform. - - The returned result is suitable to be applied to the GL_SPOT_DIRECTION - property of \c{glLight()}, assuming that the modelview transformation - in the GL context is set to the identity. - - \sa eyePosition() -*/ -QVector3D Light::eyeSpotDirection - (const QMatrix4x4& transform) const -{ - Q_D(const Light); - return transform.mapVector(d->spotDirection); -} - -/*! - \fn void Light::positionChanged() - - This signal is emitted when position() changes, or when the type() - changes between Directional and Positional. - - \sa position(), lightChanged() -*/ - -/*! - \fn void Light::directionChanged() - - This signal is emitted when direction() changes, or when the type() - changes between Directional and Positional. - - \sa direction(), lightChanged() -*/ - -/*! - \fn void Light::ambientColorChanged() - - This signal is emitted when ambientColor() changes. - - \sa ambientColor(), lightChanged() -*/ - -/*! - \fn void Light::diffuseColorChanged() - - This signal is emitted when diffuseColor() changes. - - \sa diffuseColor(), lightChanged() -*/ - -/*! - \fn void Light::specularColorChanged() - - This signal is emitted when specularColor() changes. - - \sa specularColor(), lightChanged() -*/ - -/*! - \fn void Light::spotDirectionChanged() - - This signal is emitted when spotDirection() changes. - - \sa spotDirection(), lightChanged() -*/ - -/*! - \fn void Light::spotExponentChanged() - - This signal is emitted when spotExponent() changes. - - \sa spotExponent(), lightChanged() -*/ - -/*! - \fn void Light::spotAngleChanged() - - This signal is emitted when spotAngle() changes. - - \sa spotAngle(), lightChanged() -*/ - -/*! - \fn void Light::constantAttenuationChanged() - - This signal is emitted when constantAttenuation() changes. - - \sa constantAttenuation(), lightChanged() -*/ - -/*! - \fn void Light::linearAttenuationChanged() - - This signal is emitted when linearAttenuation() changes. - - \sa linearAttenuation(), lightChanged() -*/ - -/*! - \fn void Light::quadraticAttenuationChanged() - - This signal is emitted when quadraticAttenuation() changes. - - \sa quadraticAttenuation(), lightChanged() -*/ - -/*! - \fn void Light::lightChanged() - - This signal is emitted when any of the properties on the light changes. -*/ diff --git a/examples/sensors/cubehouse/light.h b/examples/sensors/cubehouse/light.h deleted file mode 100644 index d30f3278..00000000 --- a/examples/sensors/cubehouse/light.h +++ /dev/null @@ -1,141 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef LIGHT_H -#define LIGHT_H - -#include -#include -#include -#include -#include - -class LightPrivate; -QT_BEGIN_NAMESPACE -class QMatrix4x4; -QT_END_NAMESPACE - -class Light : public QObject -{ - Q_OBJECT - Q_ENUMS(LightType) - Q_PROPERTY(LightType type READ type) - Q_PROPERTY(QVector3D position READ position WRITE setPosition NOTIFY positionChanged) - Q_PROPERTY(QVector3D direction READ direction WRITE setDirection NOTIFY directionChanged) - Q_PROPERTY(QColor ambientColor READ ambientColor WRITE setAmbientColor NOTIFY ambientColorChanged) - Q_PROPERTY(QColor diffuseColor READ diffuseColor WRITE setDiffuseColor NOTIFY diffuseColorChanged) - Q_PROPERTY(QColor specularColor READ specularColor WRITE setSpecularColor NOTIFY specularColorChanged) - Q_PROPERTY(QVector3D spotDirection READ spotDirection WRITE setSpotDirection NOTIFY spotDirectionChanged) - Q_PROPERTY(qreal spotExponent READ spotExponent WRITE setSpotExponent NOTIFY spotExponentChanged) - Q_PROPERTY(qreal spotAngle READ spotAngle WRITE setSpotAngle NOTIFY spotAngleChanged) - Q_PROPERTY(qreal constantAttenuation READ constantAttenuation WRITE setConstantAttenuation NOTIFY constantAttenuationChanged) - Q_PROPERTY(qreal linearAttenuation READ linearAttenuation WRITE setLinearAttenuation NOTIFY linearAttenuationChanged) - Q_PROPERTY(qreal quadraticAttenuation READ quadraticAttenuation WRITE setQuadraticAttenuation NOTIFY quadraticAttenuationChanged) -public: - enum LightType { - Directional, - Positional - }; - - Light(QObject *parent = 0); - ~Light(); - - Light::LightType type() const; - - QVector3D position() const; - void setPosition(const QVector3D& value); - - QVector3D direction() const; - void setDirection(const QVector3D& value); - - QColor ambientColor() const; - void setAmbientColor(const QColor& value); - - QColor diffuseColor() const; - void setDiffuseColor(const QColor& value); - - QColor specularColor() const; - void setSpecularColor(const QColor& value); - - QVector3D spotDirection() const; - void setSpotDirection(const QVector3D& value); - - qreal spotExponent() const; - void setSpotExponent(qreal value); - - qreal spotAngle() const; - void setSpotAngle(qreal value); - - qreal spotCosAngle() const; - - qreal constantAttenuation() const; - void setConstantAttenuation(qreal value); - - qreal linearAttenuation() const; - void setLinearAttenuation(qreal value); - - qreal quadraticAttenuation() const; - void setQuadraticAttenuation(qreal value); - - QVector4D eyePosition(const QMatrix4x4& transform) const; - QVector3D eyeSpotDirection(const QMatrix4x4& transform) const; - -Q_SIGNALS: - void positionChanged(); - void directionChanged(); - void ambientColorChanged(); - void diffuseColorChanged(); - void specularColorChanged(); - void spotDirectionChanged(); - void spotExponentChanged(); - void spotAngleChanged(); - void constantAttenuationChanged(); - void linearAttenuationChanged(); - void quadraticAttenuationChanged(); - void lightChanged(); - -private: - QScopedPointer d_ptr; - - Q_DECLARE_PRIVATE(Light) - Q_DISABLE_COPY(Light) -}; - -#endif diff --git a/examples/sensors/cubehouse/lighting.vsh b/examples/sensors/cubehouse/lighting.vsh deleted file mode 100644 index cdbdf0f1..00000000 --- a/examples/sensors/cubehouse/lighting.vsh +++ /dev/null @@ -1,121 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -// Algorithm from section 2.14.1 of OpenGL 2.1 specification. - -attribute highp vec4 vertex; -attribute highp vec3 normal; -attribute highp vec4 texcoord; -uniform mediump mat4 matrix; -uniform mediump mat4 modelView; -uniform mediump mat3 normalMatrix; -varying highp vec4 qTexCoord; - -uniform mediump vec4 scli; // Specular intensity of the light -uniform mediump vec3 pli; // Position of the light -uniform mediump float pliw; // 0 for directional, 1 for positional. -uniform mediump vec4 acm; // Ambient color of the material -uniform mediump vec4 dcm; // Diffuse color of the material -uniform mediump vec4 scm; // Specular color of the material -uniform mediump float srm; // Specular exponent of the material -uniform mediump vec4 acs; // Light model's ambient color of the scene -uniform bool viewerAtInfinity; // Light model indicates viewer at infinity - -varying mediump vec4 qColor; -varying mediump vec4 qSecondaryColor; - -void qLightVertex(vec4 vertex, vec3 normal) -{ - int i, material; - vec3 toEye, toLight, h; - float angle, spot, attenuation; - vec4 color, scolor; - vec4 adcomponent, scomponent; - - // Start with the material's emissive color and the ambient scene color. - // ecm is assumed to be black. - color = acm * acs; - scolor = vec4(0, 0, 0, 0); - - // Vector from the vertex to the eye position (i.e. the origin). - if (viewerAtInfinity) - toEye = vec3(0, 0, 1); - else - toEye = normalize(-vertex.xyz); - - // Determine the cosine of the angle between the normal and the - // vector from the vertex to the light. - if (pliw == 0.0) - toLight = normalize(pli); - else - toLight = normalize(pli - vertex.xyz); - angle = max(dot(normal, toLight), 0.0); - - // Calculate the ambient and diffuse light components. - // Assumptions: acli = (0, 0, 0, 1), dcli = (1, 1, 1, 1). - adcomponent = acm * vec4(0, 0, 0, 1) + angle * dcm; - - // Calculate the specular light components. - if (angle != 0.0) { - h = normalize(toLight + toEye); - angle = max(dot(normal, h), 0.0); - scomponent = pow(angle, srm) * scm; // scli = (1, 1, 1, 1). - } else { - scomponent = vec4(0, 0, 0, 0); - } - - // Add up the color components we computed. - color += adcomponent; - scolor += scomponent; - - // Generate the final output colors. - float alpha = dcm.a; - qColor = vec4(clamp(color.rgb, 0.0, 1.0), alpha); - qSecondaryColor = clamp(scolor, 0.0, 1.0); -} - -void main(void) -{ - gl_Position = matrix * vertex; - highp vec4 vertex = modelView * vertex; - highp vec3 norm = normalize(normalMatrix * normal); - qLightVertex(vertex, norm); - qTexCoord = texcoord; -} diff --git a/examples/sensors/cubehouse/lightmodel.cpp b/examples/sensors/cubehouse/lightmodel.cpp deleted file mode 100644 index 3040dda0..00000000 --- a/examples/sensors/cubehouse/lightmodel.cpp +++ /dev/null @@ -1,243 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "lightmodel.h" - -/*! - \class LightModel - \brief The LightModel class defines the lighting model to use for the scene. - \since 4.7 - \ingroup qt3d - \ingroup qt3d::painting -*/ - -/*! - \enum LightModel::Model - This enum defines the type of lighting model to use: one-sided or two-sided. - - \value OneSided One-sided lighting, with the front face material used for both front and back faces. - \value TwoSided Two-sided lighting, with separate front and back face materials. -*/ - -/*! - \enum LightModel::ColorControl - This enum controls the number of colors to be generated by the lighting computation. - - \value SingleColor A single color is generated by the lighting computation. - \value SeparateSpecularColor A separate specular color computation is - performed and then summed into the pixel color after texture mapping. -*/ - -/*! - \enum LightModel::ViewerPosition - This enum defines the position of the viewer for the purposes of lighting calculations. - - \value ViewerAtInfinity The viewer is at infinity along the -z axis. - \value LocalViewer The viewer is at the local origin in eye coordinates. -*/ - -class LightModelPrivate -{ -public: - LightModelPrivate() - : model(LightModel::OneSided), - colorControl(LightModel::SingleColor), - viewerPosition(LightModel::ViewerAtInfinity) - { - ambientSceneColor.setRgbF(0.2, 0.2, 0.2, 1.0); - } - - LightModel::Model model; - LightModel::ColorControl colorControl; - LightModel::ViewerPosition viewerPosition; - QColor ambientSceneColor; -}; - -/*! - Constructs a light model object with default values and attach - it to \a parent. -*/ -LightModel::LightModel(QObject *parent) - : QObject(parent), d_ptr(new LightModelPrivate) -{ -} - -/*! - Destroys this light model. -*/ -LightModel::~LightModel() -{ -} - -/*! - \property LightModel::model - \brief the lighting model to use, either OneSided or TwoSided. - The default is OneSided. - - \sa modelChanged() -*/ -LightModel::Model LightModel::model() const -{ - Q_D(const LightModel); - return d->model; -} - -void LightModel::setModel(LightModel::Model value) -{ - Q_D(LightModel); - if (d->model != value) { - d->model = value; - emit modelChanged(); - emit lightModelChanged(); - } -} - -/*! - \property LightModel::colorControl - \brief the color control mode, either SingleColor or - SeparateSpecularColor. The default value is SingleColor. - - If SingleColor is specified, then a single color is calculated - by the lighting computation for a vertex. If SeparateSpecularColor - is specified, then a separate specular color computation is - performed and then summed into the pixel color after texture mapping. - - \sa colorControlChanged() -*/ -LightModel::ColorControl LightModel::colorControl() const -{ - Q_D(const LightModel); - return d->colorControl; -} - -void LightModel::setColorControl(LightModel::ColorControl value) -{ - Q_D(LightModel); - if (d->colorControl != value) { - d->colorControl = value; - emit colorControlChanged(); - emit lightModelChanged(); - } -} - -/*! - \property LightModel::viewerPosition - \brief the viewer position, either ViewerAtInfinity or LocalViewer. - The default value is ViewerAtInfinity. - - \sa viewerPositionChanged() -*/ -LightModel::ViewerPosition LightModel::viewerPosition() const -{ - Q_D(const LightModel); - return d->viewerPosition; -} - -void LightModel::setViewerPosition(LightModel::ViewerPosition value) -{ - Q_D(LightModel); - if (d->viewerPosition != value) { - d->viewerPosition = value; - emit viewerPositionChanged(); - emit lightModelChanged(); - } -} - -/*! - \property LightModel::ambientSceneColor - \brief the ambient color of the entire scene. The default value - is (0.2, 0.2, 0.2, 1.0). - - \sa ambientSceneColorChanged() -*/ -QColor LightModel::ambientSceneColor() const -{ - Q_D(const LightModel); - return d->ambientSceneColor; -} - -void LightModel::setAmbientSceneColor(const QColor& value) -{ - Q_D(LightModel); - if (d->ambientSceneColor != value) { - d->ambientSceneColor = value; - emit ambientSceneColorChanged(); - emit lightModelChanged(); - } -} - -/*! - \fn void LightModel::modelChanged() - - This signal is emitted when model() changes. - - \sa model(), lightModelChanged() -*/ - -/*! - \fn void LightModel::colorControlChanged() - - This signal is emitted when colorControl() changes. - - \sa colorControl(), lightModelChanged() -*/ - -/*! - \fn void LightModel::viewerPositionChanged() - - This signal is emitted when viewerPosition() changes. - - \sa viewerPosition(), lightModelChanged() -*/ - -/*! - \fn void LightModel::ambientSceneColorChanged() - - This signal is emitted when ambientSceneColor() changes. - - \sa ambientSceneColor(), lightModelChanged() -*/ - -/*! - \fn void LightModel::lightModelChanged() - - This signal is emitted when one of model(), colorControl(), - viewerPosition(), or ambientSceneColor() changes. -*/ diff --git a/examples/sensors/cubehouse/lightmodel.h b/examples/sensors/cubehouse/lightmodel.h deleted file mode 100644 index be1ce103..00000000 --- a/examples/sensors/cubehouse/lightmodel.h +++ /dev/null @@ -1,108 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef LIGHTMODEL_H -#define LIGHTMODEL_H - -#include -#include -#include - -class LightModelPrivate; - -class LightModel : public QObject -{ - Q_OBJECT - Q_ENUMS(Model) - Q_ENUMS(ColorControl) - Q_ENUMS(ViewerPosition) - Q_PROPERTY(Model model READ model WRITE setModel NOTIFY modelChanged) - Q_PROPERTY(ColorControl colorControl READ colorControl WRITE setColorControl NOTIFY colorControlChanged) - Q_PROPERTY(ViewerPosition viewerPosition READ viewerPosition WRITE setViewerPosition NOTIFY viewerPositionChanged) - Q_PROPERTY(QColor ambientSceneColor READ ambientSceneColor WRITE setAmbientSceneColor NOTIFY ambientSceneColorChanged) -public: - explicit LightModel(QObject *parent = 0); - ~LightModel(); - - enum Model - { - OneSided, - TwoSided - }; - - enum ColorControl - { - SingleColor, - SeparateSpecularColor - }; - - enum ViewerPosition - { - ViewerAtInfinity, - LocalViewer - }; - - LightModel::Model model() const; - void setModel(LightModel::Model value); - - LightModel::ColorControl colorControl() const; - void setColorControl(LightModel::ColorControl value); - - LightModel::ViewerPosition viewerPosition() const; - void setViewerPosition(LightModel::ViewerPosition value); - - QColor ambientSceneColor() const; - void setAmbientSceneColor(const QColor& value); - -Q_SIGNALS: - void modelChanged(); - void colorControlChanged(); - void viewerPositionChanged(); - void ambientSceneColorChanged(); - void lightModelChanged(); - -private: - QScopedPointer d_ptr; - - Q_DECLARE_PRIVATE(LightModel) - Q_DISABLE_COPY(LightModel) -}; - -#endif diff --git a/examples/sensors/cubehouse/main.cpp b/examples/sensors/cubehouse/main.cpp deleted file mode 100644 index 386c3e1b..00000000 --- a/examples/sensors/cubehouse/main.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include -#include "view.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - View view; - if (QApplication::arguments().contains("-framerate")) - view.setShowFrameRate(true); - if (QApplication::arguments().contains("-maximize")) - view.showMaximized(); - else if (QApplication::arguments().contains("-fullscreen")) - view.showFullScreen(); - else - view.show(); - return app.exec(); -} diff --git a/examples/sensors/cubehouse/material.cpp b/examples/sensors/cubehouse/material.cpp deleted file mode 100644 index 374d360b..00000000 --- a/examples/sensors/cubehouse/material.cpp +++ /dev/null @@ -1,331 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "material.h" - -/*! - \class Material - \brief The Material class describes material properties for OpenGL drawing. - \since 4.7 - \ingroup qt3d - \ingroup qt3d::painting -*/ - -class MaterialPrivate -{ -public: - explicit MaterialPrivate(); - - QColor basicColor; - QColor ambientColor; - QColor diffuseColor; - QColor specularColor; - QColor emittedLight; - qreal shininess; -}; - -MaterialPrivate::MaterialPrivate() - : basicColor(255, 255, 255, 255), - specularColor(0, 0, 0, 255), - emittedLight(0, 0, 0, 255), - shininess(0) -{ - ambientColor.setRgbF(0.2f, 0.2f, 0.2f, 1.0f); - diffuseColor.setRgbF(0.8f, 0.8f, 0.8f, 1.0f); -} - -/*! - Constructs a Material object with its default values, - and attaches it to \a parent. -*/ -Material::Material(QObject *parent) - : QObject(parent), d_ptr(new MaterialPrivate) -{ -} - -/*! - Destroys this Material object. -*/ -Material::~Material() -{ -} - -/*! - \property Material::basicColor - \brief the basic color of the material. The default value - is (1.0, 1.0, 1.0, 1.0). - - The basic color is used by effects that don't implement - material-based lighting. It is ignored by material-based - lighting effects. - - \sa ambientColor(), diffuseColor(), basicColorChanged(), setColor() -*/ -QColor Material::basicColor() const -{ - Q_D(const Material); - return d->basicColor; -} - -void Material::setBasicColor(const QColor& value) -{ - Q_D(Material); - if (d->basicColor != value) { - d->basicColor = value; - emit basicColorChanged(); - emit materialChanged(); - } -} - -/*! - \property Material::ambientColor - \brief the ambient color of the material. The default value - is (0.2, 0.2, 0.2, 1.0). - - \sa diffuseColor(), specularColor(), ambientColorChanged() -*/ -QColor Material::ambientColor() const -{ - Q_D(const Material); - return d->ambientColor; -} - -void Material::setAmbientColor(const QColor& value) -{ - Q_D(Material); - if (d->ambientColor != value) { - d->ambientColor = value; - emit ambientColorChanged(); - emit materialChanged(); - } -} - -/*! - \property Material::diffuseColor - \brief the diffuse color of the material. The default value - is (0.8, 0.8, 0.8, 1.0). - - \sa ambientColor(), specularColor(), diffuseColorChanged() -*/ -QColor Material::diffuseColor() const -{ - Q_D(const Material); - return d->diffuseColor; -} - -void Material::setDiffuseColor(const QColor& value) -{ - Q_D(Material); - if (d->diffuseColor != value) { - d->diffuseColor = value; - emit diffuseColorChanged(); - emit materialChanged(); - } -} - -/*! - \property Material::specularColor - \brief the specular color of the material. The default value - is (0, 0, 0, 1). - - \sa ambientColor(), diffuseColor(), specularColorChanged() -*/ -QColor Material::specularColor() const -{ - Q_D(const Material); - return d->specularColor; -} - -void Material::setSpecularColor(const QColor& value) -{ - Q_D(Material); - if (d->specularColor != value) { - d->specularColor = value; - emit specularColorChanged(); - emit materialChanged(); - } -} - -/*! - \property Material::emittedLight - \brief the emitted light intensity of the material. - The default value is (0.0, 0.0, 0.0, 1.0), which indicates - that the material does not emit any light. - - \sa emittedLightChanged() -*/ -QColor Material::emittedLight() const -{ - Q_D(const Material); - return d->emittedLight; -} - -void Material::setEmittedLight(const QColor& value) -{ - Q_D(Material); - if (d->emittedLight != value) { - d->emittedLight = value; - emit emittedLightChanged(); - emit materialChanged(); - } -} - -/*! - \property Material::color - \brief the overall color of the material. The default value - is (1.0, 1.0, 1.0, 1.0). - - This is a convenience property. When read it returns basicColor(). - When written, it sets basicColor() to the value, ambientColor() - to 20% of the value, and diffuseColor() to 80% of the value. - The result is that regardless of whether lighting is used or not, - the material will appear to have a similar color. - - \sa basicColor(), ambientColor(), diffuseColor() -*/ -QColor Material::color() const -{ - Q_D(const Material); - return d->basicColor; -} - -void Material::setColor(const QColor& value) -{ - Q_D(Material); - d->basicColor = value; - d->ambientColor.setRgbF - (value.redF() * 0.2f, value.greenF() * 0.2f, - value.blueF() * 0.2f, value.alphaF()); - d->diffuseColor.setRgbF - (value.redF() * 0.8f, value.greenF() * 0.8f, - value.blueF() * 0.8f, value.alphaF()); - emit basicColorChanged(); - emit ambientColorChanged(); - emit diffuseColorChanged(); - emit materialChanged(); -} - -/*! - \property Material::shininess - \brief the specular exponent of the material, or how shiny it is. - Must be between 0 and 128. The default value is 0. A value outside - this range will be clamped to the range when the property is set. - - \sa shininessChanged() -*/ -qreal Material::shininess() const -{ - Q_D(const Material); - return d->shininess; -} - -void Material::setShininess(qreal value) -{ - Q_D(Material); - if (value < 0) - value = 0; - else if (value > 128) - value = 128; - if (d->shininess != value) { - d->shininess = value; - emit shininessChanged(); - emit materialChanged(); - } -} - -/*! - \fn void Material::basicColorChanged() - - This signal is emitted when basicColor() changes. - - \sa basicColor(), setBasicColor(), materialChanged() -*/ - -/*! - \fn void Material::ambientColorChanged() - - This signal is emitted when ambientColor() changes. - - \sa ambientColor(), setAmbientColor(), materialChanged() -*/ - -/*! - \fn void Material::diffuseColorChanged() - - This signal is emitted when diffuseColor() changes. - - \sa diffuseColor(), setDiffuseColor(), materialChanged() -*/ - -/*! - \fn void Material::specularColorChanged() - - This signal is emitted when specularColor() changes. - - \sa specularColor(), setSpecularColor(), materialChanged() -*/ - -/*! - \fn void Material::emittedLightChanged() - - This signal is emitted when emittedLight() changes. - - \sa emittedLight(), setEmittedLight(), materialChanged() -*/ - -/*! - \fn void Material::shininessChanged() - - This signal is emitted when shininess() changes. - - \sa shininess(), setShininess(), materialChanged() -*/ - -/*! - \fn void Material::materialChanged() - - This signal is emitted when one of basicColor(), ambientColor(), - diffuseColor(), specularColor(), emittedLight(), shiniess(), - or texture() changes. - - \sa basicColorChanged(), ambientColorChanged(), diffuseColorChanged() - \sa specularColorChanged(), emittedLightChanged(), shininessChanged() - \sa texturesChanged() -*/ diff --git a/examples/sensors/cubehouse/material.fsh b/examples/sensors/cubehouse/material.fsh deleted file mode 100644 index 260b276c..00000000 --- a/examples/sensors/cubehouse/material.fsh +++ /dev/null @@ -1,47 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -varying mediump vec4 qColor; -varying mediump vec4 qSecondaryColor; - -void main(void) -{ - gl_FragColor = clamp(qColor + vec4(qSecondaryColor.xyz, 0.0), 0.0, 1.0); -} diff --git a/examples/sensors/cubehouse/material.h b/examples/sensors/cubehouse/material.h deleted file mode 100644 index 761b436d..00000000 --- a/examples/sensors/cubehouse/material.h +++ /dev/null @@ -1,101 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef MATERIAL_H -#define MATERIAL_H - -#include -#include -#include - -class MaterialPrivate; - -class Material : public QObject -{ - Q_OBJECT - Q_PROPERTY(QColor basicColor READ basicColor WRITE setBasicColor NOTIFY basicColorChanged) - Q_PROPERTY(QColor ambientColor READ ambientColor WRITE setAmbientColor NOTIFY ambientColorChanged) - Q_PROPERTY(QColor diffuseColor READ diffuseColor WRITE setDiffuseColor NOTIFY diffuseColorChanged) - Q_PROPERTY(QColor specularColor READ specularColor WRITE setSpecularColor NOTIFY specularColorChanged) - Q_PROPERTY(QColor emittedLight READ emittedLight WRITE setEmittedLight NOTIFY emittedLightChanged) - Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY basicColorChanged) - Q_PROPERTY(qreal shininess READ shininess WRITE setShininess NOTIFY shininessChanged) -public: - explicit Material(QObject *parent = 0); - ~Material(); - - QColor basicColor() const; - void setBasicColor(const QColor& value); - - QColor ambientColor() const; - void setAmbientColor(const QColor& value); - - QColor diffuseColor() const; - void setDiffuseColor(const QColor& value); - - QColor specularColor() const; - void setSpecularColor(const QColor& value); - - QColor emittedLight() const; - void setEmittedLight(const QColor& value); - - QColor color() const; - void setColor(const QColor& value); - - qreal shininess() const; - void setShininess(qreal value); - -Q_SIGNALS: - void basicColorChanged(); - void ambientColorChanged(); - void diffuseColorChanged(); - void specularColorChanged(); - void emittedLightChanged(); - void shininessChanged(); - void materialChanged(); - -private: - QScopedPointer d_ptr; - - Q_DECLARE_PRIVATE(Material) - Q_DISABLE_COPY(Material) -}; - -#endif diff --git a/examples/sensors/cubehouse/mesh/table.3ds b/examples/sensors/cubehouse/mesh/table.3ds new file mode 100644 index 00000000..3e576bd1 Binary files /dev/null and b/examples/sensors/cubehouse/mesh/table.3ds differ diff --git a/examples/sensors/cubehouse/painter.cpp b/examples/sensors/cubehouse/painter.cpp deleted file mode 100644 index 04ee5222..00000000 --- a/examples/sensors/cubehouse/painter.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "painter.h" -#include - -void Painter::drawQuad(const QVector3D &c1, const QVector3D &c2, - const QVector3D &c3, const QVector3D &c4, - const QVector3D &normal) -{ - QVarLengthArray vertices; - QVarLengthArray normals; - - vertices.append(c1.x()); - vertices.append(c1.y()); - vertices.append(c1.z()); - normals.append(normal.x()); - normals.append(normal.y()); - normals.append(normal.z()); - - vertices.append(c2.x()); - vertices.append(c2.y()); - vertices.append(c2.z()); - normals.append(normal.x()); - normals.append(normal.y()); - normals.append(normal.z()); - - vertices.append(c3.x()); - vertices.append(c3.y()); - vertices.append(c3.z()); - normals.append(normal.x()); - normals.append(normal.y()); - normals.append(normal.z()); - - vertices.append(c4.x()); - vertices.append(c4.y()); - vertices.append(c4.z()); - normals.append(normal.x()); - normals.append(normal.y()); - normals.append(normal.z()); - - setVertices(vertices.constData(), 3); - setNormals(normals.constData(), 3); - - glDrawArrays(GL_TRIANGLE_FAN, 0, 4); -} diff --git a/examples/sensors/cubehouse/painter.h b/examples/sensors/cubehouse/painter.h deleted file mode 100644 index 0b8fc6b0..00000000 --- a/examples/sensors/cubehouse/painter.h +++ /dev/null @@ -1,115 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef PAINTER_H -#define PAINTER_H - -#include -#include - -class Light; -class LightModel; -class Material; -class QGLShaderProgram; - -class Painter -{ -public: - Painter() : light(0), lightModel(0) {} - virtual ~Painter() {} - - virtual void setMatrices(const QMatrix4x4 &mv, const QMatrix4x4 &proj) = 0; - virtual void selectMaterial(Material *material) = 0; - virtual void selectTexturedMaterial(Material *material) = 0; - virtual void setVertices(const float *array, int stride) = 0; - virtual void setTexCoords(const float *array, int stride) = 0; - virtual void setNormals(const float *array, int stride) = 0; - - void drawQuad(const QVector3D &c1, const QVector3D &c2, - const QVector3D &c3, const QVector3D &c4, - const QVector3D &normal); - - void setLight(Light *value) { light = value; } - void setLightModel(LightModel *value) { lightModel = value; } - -protected: - Light *light; - LightModel *lightModel; -}; - -class FixedFunctionPainter : public Painter -{ -public: - FixedFunctionPainter(); - - void setMatrices(const QMatrix4x4 &mv, const QMatrix4x4 &proj); - void selectMaterial(Material *material); - void selectTexturedMaterial(Material *material); - void setVertices(const float *array, int stride); - void setTexCoords(const float *array, int stride); - void setNormals(const float *array, int stride); -}; - -class ShaderPainter : public Painter -{ -public: - ShaderPainter(); - ~ShaderPainter(); - - void setMatrices(const QMatrix4x4 &mv, const QMatrix4x4 &proj); - void selectMaterial(Material *material); - void selectTexturedMaterial(Material *material); - void setVertices(const float *array, int stride); - void setTexCoords(const float *array, int stride); - void setNormals(const float *array, int stride); - -private: - QGLShaderProgram *materialProgram; - QGLShaderProgram *textureProgram; - QGLShaderProgram *currentProgram; - QMatrix4x4 combinedMatrix; - QMatrix4x4 modelViewMatrix; - QMatrix3x3 normalMatrix; - bool matricesChanged; - - void updateMaterials(QGLShaderProgram *program, Material *material); -}; - -#endif diff --git a/examples/sensors/cubehouse/painter_fixed.cpp b/examples/sensors/cubehouse/painter_fixed.cpp deleted file mode 100644 index fdff9548..00000000 --- a/examples/sensors/cubehouse/painter_fixed.cpp +++ /dev/null @@ -1,242 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "painter.h" -#include "light.h" -#include "lightmodel.h" -#include "material.h" - -FixedFunctionPainter::FixedFunctionPainter() -{ - glEnable(GL_LIGHTING); - glEnable(GL_LIGHT0); - glDisable(GL_CULL_FACE); -} - -static void setMatrix(GLenum type, const QMatrix4x4 &matrix) -{ - glMatrixMode(type); - if (sizeof(qreal) == sizeof(GLfloat)) { - glLoadMatrixf(reinterpret_cast(matrix.constData())); - } else { - GLfloat mat[16]; - const qreal *m = matrix.constData(); - for (int index = 0; index < 16; ++index) - mat[index] = m[index]; - glLoadMatrixf(mat); - } -} - -void FixedFunctionPainter::setMatrices - (const QMatrix4x4 &mv, const QMatrix4x4 &proj) -{ - setMatrix(GL_PROJECTION, proj); - setMatrix(GL_MODELVIEW, mv); -} - -static void setLight(int light, const Light *parameters, - const QMatrix4x4& transform = QMatrix4x4()) -{ - GLfloat params[4]; - - glMatrixMode(GL_MODELVIEW); - glPushMatrix(); - glLoadIdentity(); - - QColor color = parameters->ambientColor(); - params[0] = color.redF(); - params[1] = color.greenF(); - params[2] = color.blueF(); - params[3] = color.alphaF(); - glLightfv(light, GL_AMBIENT, params); - - color = parameters->diffuseColor(); - params[0] = color.redF(); - params[1] = color.greenF(); - params[2] = color.blueF(); - params[3] = color.alphaF(); - glLightfv(light, GL_DIFFUSE, params); - - color = parameters->specularColor(); - params[0] = color.redF(); - params[1] = color.greenF(); - params[2] = color.blueF(); - params[3] = color.alphaF(); - glLightfv(light, GL_SPECULAR, params); - - QVector4D vector = parameters->eyePosition(transform); - params[0] = vector.x(); - params[1] = vector.y(); - params[2] = vector.z(); - params[3] = vector.w(); - glLightfv(light, GL_POSITION, params); - - QVector3D spotDirection = parameters->eyeSpotDirection(transform); - params[0] = spotDirection.x(); - params[1] = spotDirection.y(); - params[2] = spotDirection.z(); - glLightfv(light, GL_SPOT_DIRECTION, params); - - params[0] = parameters->spotExponent(); - glLightfv(light, GL_SPOT_EXPONENT, params); - - params[0] = parameters->spotAngle(); - glLightfv(light, GL_SPOT_CUTOFF, params); - - params[0] = parameters->constantAttenuation(); - glLightfv(light, GL_CONSTANT_ATTENUATION, params); - - params[0] = parameters->linearAttenuation(); - glLightfv(light, GL_LINEAR_ATTENUATION, params); - - params[0] = parameters->quadraticAttenuation(); - glLightfv(light, GL_QUADRATIC_ATTENUATION, params); - - glPopMatrix(); -} - -static void setLightModel(const LightModel *lightModel) -{ - GLfloat values[4]; -#ifdef GL_LIGHT_MODEL_TWO_SIDE - if (lightModel->model() == LightModel::TwoSided) - values[0] = 1.0f; - else - values[0] = 0.0f; - glLightModelfv(GL_LIGHT_MODEL_TWO_SIDE, values); -#endif -#ifdef GL_LIGHT_MODEL_COLOR_CONTROL - if (lightModel->colorControl() == LightModel::SeparateSpecularColor) - values[0] = GL_SEPARATE_SPECULAR_COLOR; - else - values[0] = GL_SINGLE_COLOR; - glLightModelfv(GL_LIGHT_MODEL_COLOR_CONTROL, values); -#endif -#ifdef GL_LIGHT_MODEL_LOCAL_VIEWER - if (lightModel->viewerPosition() == LightModel::LocalViewer) - values[0] = 1.0f; - else - values[0] = 0.0f; - glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, values); -#endif -#ifdef GL_LIGHT_MODEL_AMBIENT - QColor color = lightModel->ambientSceneColor(); - values[0] = color.redF(); - values[1] = color.blueF(); - values[2] = color.greenF(); - values[3] = color.alphaF(); - glLightModelfv(GL_LIGHT_MODEL_AMBIENT, values); -#endif -} - -static void setMaterial(int face, const Material *parameters) -{ - GLfloat params[17]; - - QColor mcolor = parameters->ambientColor(); - params[0] = mcolor.redF(); - params[1] = mcolor.greenF(); - params[2] = mcolor.blueF(); - params[3] = mcolor.alphaF(); - - mcolor = parameters->diffuseColor(); - params[4] = mcolor.redF(); - params[5] = mcolor.greenF(); - params[6] = mcolor.blueF(); - params[7] = mcolor.alphaF(); - - mcolor = parameters->specularColor(); - params[8] = mcolor.redF(); - params[9] = mcolor.greenF(); - params[10] = mcolor.blueF(); - params[11] = mcolor.alphaF(); - - mcolor = parameters->emittedLight(); - params[12] = mcolor.redF(); - params[13] = mcolor.greenF(); - params[14] = mcolor.blueF(); - params[15] = mcolor.alphaF(); - - params[16] = parameters->shininess(); - - glMaterialfv(face, GL_AMBIENT, params); - glMaterialfv(face, GL_DIFFUSE, params + 4); - glMaterialfv(face, GL_SPECULAR, params + 8); - glMaterialfv(face, GL_EMISSION, params + 12); - glMaterialfv(face, GL_SHININESS, params + 16); -} - -void FixedFunctionPainter::selectMaterial(Material *material) -{ - ::setLight(GL_LIGHT0, light); - ::setLightModel(lightModel); - ::setMaterial(GL_FRONT_AND_BACK, material); - glDisable(GL_TEXTURE_2D); - glEnableClientState(GL_VERTEX_ARRAY); - glEnableClientState(GL_NORMAL_ARRAY); - glDisableClientState(GL_TEXTURE_COORD_ARRAY); -} - -void FixedFunctionPainter::selectTexturedMaterial(Material *material) -{ - ::setLight(GL_LIGHT0, light); - ::setLightModel(lightModel); - ::setMaterial(GL_FRONT_AND_BACK, material); - glEnable(GL_TEXTURE_2D); - glEnableClientState(GL_VERTEX_ARRAY); - glEnableClientState(GL_NORMAL_ARRAY); - glEnableClientState(GL_TEXTURE_COORD_ARRAY); - glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL); -} - -void FixedFunctionPainter::setVertices(const float *array, int stride) -{ - glVertexPointer(3, GL_FLOAT, stride * sizeof(float), array); -} - -void FixedFunctionPainter::setTexCoords(const float *array, int stride) -{ - glTexCoordPointer(2, GL_FLOAT, stride * sizeof(float), array); -} - -void FixedFunctionPainter::setNormals(const float *array, int stride) -{ - glNormalPointer(GL_FLOAT, stride * sizeof(float), array); -} diff --git a/examples/sensors/cubehouse/painter_shader.cpp b/examples/sensors/cubehouse/painter_shader.cpp deleted file mode 100644 index 13163b34..00000000 --- a/examples/sensors/cubehouse/painter_shader.cpp +++ /dev/null @@ -1,159 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "painter.h" -#include "light.h" -#include "lightmodel.h" -#include "material.h" -#include - -ShaderPainter::ShaderPainter() -{ - materialProgram = new QGLShaderProgram(); - materialProgram->addShaderFromSourceFile - (QGLShader::Vertex, QLatin1String(":/lighting.vsh")); - materialProgram->addShaderFromSourceFile - (QGLShader::Fragment, QLatin1String(":/material.fsh")); - materialProgram->bindAttributeLocation("vertex", 0); - materialProgram->bindAttributeLocation("normal", 1); - materialProgram->bindAttributeLocation("texcoord", 2); - materialProgram->link(); - - textureProgram = new QGLShaderProgram(); - textureProgram->addShaderFromSourceFile - (QGLShader::Vertex, QLatin1String(":/lighting.vsh")); - textureProgram->addShaderFromSourceFile - (QGLShader::Fragment, QLatin1String(":/texture.fsh")); - textureProgram->bindAttributeLocation("vertex", 0); - textureProgram->bindAttributeLocation("normal", 1); - textureProgram->bindAttributeLocation("texcoord", 2); - textureProgram->link(); - - currentProgram = 0; - matricesChanged = false; -} - -ShaderPainter::~ShaderPainter() -{ - delete materialProgram; - delete textureProgram; -} - -void ShaderPainter::setMatrices(const QMatrix4x4 &mv, const QMatrix4x4 &proj) -{ - combinedMatrix = proj * mv; - modelViewMatrix = mv; - normalMatrix = mv.normalMatrix(); - matricesChanged = true; -} - -void ShaderPainter::selectMaterial(Material *material) -{ - if (currentProgram != materialProgram) { - materialProgram->bind(); - materialProgram->enableAttributeArray(0); - materialProgram->enableAttributeArray(1); - materialProgram->disableAttributeArray(2); - currentProgram = materialProgram; - matricesChanged = true; - } - if (matricesChanged) { - materialProgram->setUniformValue("matrix", combinedMatrix); - materialProgram->setUniformValue("modelView", modelViewMatrix); - materialProgram->setUniformValue("normalMatrix", normalMatrix); - matricesChanged = false; - } - updateMaterials(materialProgram, material); -} - -void ShaderPainter::selectTexturedMaterial(Material *material) -{ - if (currentProgram != textureProgram) { - textureProgram->bind(); - textureProgram->enableAttributeArray(0); - textureProgram->enableAttributeArray(1); - textureProgram->enableAttributeArray(2); - textureProgram->setUniformValue("tex", 0); - currentProgram = textureProgram; - matricesChanged = true; - } - if (matricesChanged) { - textureProgram->setUniformValue("matrix", combinedMatrix); - textureProgram->setUniformValue("modelView", modelViewMatrix); - textureProgram->setUniformValue("normalMatrix", normalMatrix); - matricesChanged = false; - } - updateMaterials(textureProgram, material); -} - -void ShaderPainter::setVertices(const float *array, int stride) -{ - // Doesn't matter which program we use - they have the same locations. - materialProgram->setAttributeArray(0, array, 3, stride * sizeof(float)); -} - -void ShaderPainter::setTexCoords(const float *array, int stride) -{ - materialProgram->setAttributeArray(2, array, 2, stride * sizeof(float)); -} - -void ShaderPainter::setNormals(const float *array, int stride) -{ - materialProgram->setAttributeArray(1, array, 3, stride * sizeof(float)); -} - -void ShaderPainter::updateMaterials - (QGLShaderProgram *program, Material *material) -{ - // Set the uniform variables for the light. - QVector4D pli = light->eyePosition(QMatrix4x4()); - program->setUniformValue("pli", QVector3D(pli.x(), pli.y(), pli.z())); - program->setUniformValue("pliw", GLfloat(pli.w())); - - // Set the uniform variables for the light model. - program->setUniformValue("viewerAtInfinity", (int)(lightModel->viewerPosition() == LightModel::ViewerAtInfinity)); - program->setUniformValue("acs", lightModel->ambientSceneColor()); - - // Set the uniform variables for the material. - program->setUniformValue("acm", material->ambientColor()); - program->setUniformValue("dcm", material->diffuseColor()); - program->setUniformValue("scm", material->specularColor()); - program->setUniformValue("srm", (float)(material->shininess())); -} diff --git a/examples/sensors/cubehouse/qtlogo.png b/examples/sensors/cubehouse/qtlogo.png deleted file mode 100644 index 7d3e97eb..00000000 Binary files a/examples/sensors/cubehouse/qtlogo.png and /dev/null differ diff --git a/examples/sensors/cubehouse/teapot.h b/examples/sensors/cubehouse/teapot.h deleted file mode 100644 index 03692a17..00000000 --- a/examples/sensors/cubehouse/teapot.h +++ /dev/null @@ -1,4550 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef TEAPOT_H -#define TEAPOT_H - -#define teapotVertexCount 3488 -#define teapotVertexStride 8 -#define teapotTriangleCount 4032 - -static float const teapotVertexData[] = { - 0.700000f, 0.450000f, -0.000000f, -0.902860f, -0.429934f, 0.000000f, 0.000000f, 0.000000f, - 0.000000f, 0.450000f, 0.700000f, -0.000000f, -0.429934f, -0.902860f, 1.000000f, 0.000000f, - 0.750000f, 0.450000f, -0.000000f, 0.902860f, 0.429934f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, 0.450000f, 0.750000f, 0.000000f, 0.429934f, 0.902860f, 1.000000f, 1.000000f, - 0.497000f, 0.450000f, 0.497000f, -0.639602f, -0.426402f, -0.639602f, 0.500000f, 0.000000f, - 0.701563f, 0.499219f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 0.000000f, 0.500000f, - 0.498109f, 0.499219f, 0.498109f, 0.000000f, 1.000000f, -0.000000f, 0.500000f, 0.500000f, - 0.000000f, 0.499219f, 0.701563f, 0.000000f, 1.000000f, -0.000000f, 1.000000f, 0.500000f, - 0.532500f, 0.450000f, 0.532500f, 0.639602f, 0.426402f, 0.639602f, 0.500000f, 1.000000f, - 0.645750f, 0.450000f, 0.274750f, -0.833528f, -0.429664f, -0.347303f, 0.250000f, 0.000000f, - 0.690234f, 0.486914f, -0.000000f, -0.995495f, 0.094810f, 0.000000f, 0.000000f, 0.250000f, - 0.636741f, 0.486914f, 0.270917f, -0.918925f, 0.094737f, -0.382885f, 0.250000f, 0.250000f, - 0.490066f, 0.486914f, 0.490066f, -0.703896f, 0.095194f, -0.703896f, 0.500000f, 0.250000f, - 0.647191f, 0.499219f, 0.275363f, 0.000000f, 1.000000f, -0.000000f, 0.250000f, 0.500000f, - 0.686000f, 0.450000f, 0.142625f, -0.885319f, -0.429953f, -0.177064f, 0.125000f, 0.000000f, - 0.691895f, 0.471533f, -0.000000f, -0.969231f, -0.246154f, 0.000000f, 0.000000f, 0.125000f, - 0.678057f, 0.471533f, 0.140974f, -0.950406f, -0.246166f, -0.190081f, 0.125000f, 0.125000f, - 0.638273f, 0.471533f, 0.271569f, -0.894539f, -0.246731f, -0.372725f, 0.250000f, 0.125000f, - 0.676430f, 0.486914f, 0.140635f, -0.976163f, 0.094813f, -0.195233f, 0.125000f, 0.250000f, - 0.581875f, 0.450000f, 0.393750f, -0.749476f, -0.430917f, -0.502590f, 0.375000f, 0.000000f, - 0.638273f, 0.471533f, 0.271569f, -0.894539f, -0.246731f, -0.372725f, 0.250000f, 0.125000f, - 0.575137f, 0.471533f, 0.389191f, -0.804852f, -0.246803f, -0.539724f, 0.375000f, 0.125000f, - 0.491245f, 0.471533f, 0.491245f, -0.685179f, -0.247099f, -0.685180f, 0.500000f, 0.125000f, - 0.573757f, 0.486914f, 0.388257f, -0.826782f, 0.095071f, -0.554430f, 0.375000f, 0.250000f, - 0.676430f, 0.486914f, 0.140635f, -0.976163f, 0.094813f, -0.195233f, 0.125000f, 0.250000f, - 0.693848f, 0.496143f, -0.000000f, -0.724137f, 0.689656f, 0.000000f, 0.000000f, 0.375000f, - 0.679971f, 0.496143f, 0.141371f, -0.710057f, 0.689675f, -0.142011f, 0.125000f, 0.375000f, - 0.640074f, 0.496143f, 0.272335f, -0.667641f, 0.690558f, -0.278184f, 0.250000f, 0.375000f, - 0.687531f, 0.499219f, 0.142943f, 0.000000f, 1.000000f, -0.000000f, 0.125000f, 0.500000f, - 0.573757f, 0.486914f, 0.388257f, -0.826782f, 0.095071f, -0.554430f, 0.375000f, 0.250000f, - 0.640074f, 0.496143f, 0.272335f, -0.667641f, 0.690558f, -0.278184f, 0.250000f, 0.375000f, - 0.576761f, 0.496143f, 0.390289f, -0.600626f, 0.690668f, -0.402773f, 0.375000f, 0.375000f, - 0.492632f, 0.496143f, 0.492632f, -0.511047f, 0.691132f, -0.511046f, 0.500000f, 0.375000f, - 0.583174f, 0.499219f, 0.394629f, 0.000000f, 1.000000f, -0.000000f, 0.375000f, 0.500000f, - 0.274750f, 0.450000f, 0.645750f, -0.347353f, -0.429394f, -0.833647f, 0.750000f, 0.000000f, - 0.490066f, 0.486914f, 0.490066f, -0.703896f, 0.095194f, -0.703896f, 0.500000f, 0.250000f, - 0.270917f, 0.486914f, 0.636741f, -0.382888f, 0.094664f, -0.918932f, 0.750000f, 0.250000f, - 0.000000f, 0.486914f, 0.690234f, 0.000000f, 0.094810f, -0.995495f, 1.000000f, 0.250000f, - 0.275363f, 0.499219f, 0.647191f, 0.000000f, 1.000000f, -0.000000f, 0.750000f, 0.500000f, - 0.393750f, 0.450000f, 0.581875f, -0.502594f, -0.430900f, -0.749483f, 0.625000f, 0.000000f, - 0.491245f, 0.471533f, 0.491245f, -0.685180f, -0.247099f, -0.685179f, 0.500000f, 0.125000f, - 0.389191f, 0.471533f, 0.575137f, -0.539726f, -0.246792f, -0.804854f, 0.625000f, 0.125000f, - 0.271569f, 0.471533f, 0.638273f, -0.372725f, -0.246731f, -0.894539f, 0.750000f, 0.125000f, - 0.388257f, 0.486914f, 0.573757f, -0.554431f, 0.095066f, -0.826782f, 0.625000f, 0.250000f, - 0.142625f, 0.450000f, 0.686000f, -0.177068f, -0.429904f, -0.885342f, 0.875000f, 0.000000f, - 0.271569f, 0.471533f, 0.638273f, -0.372725f, -0.246731f, -0.894539f, 0.750000f, 0.125000f, - 0.140974f, 0.471533f, 0.678057f, -0.190083f, -0.246134f, -0.950414f, 0.875000f, 0.125000f, - 0.000000f, 0.471533f, 0.691895f, -0.000000f, -0.246154f, -0.969231f, 1.000000f, 0.125000f, - 0.140635f, 0.486914f, 0.676430f, -0.195233f, 0.094801f, -0.976164f, 0.875000f, 0.250000f, - 0.388257f, 0.486914f, 0.573757f, -0.554431f, 0.095066f, -0.826782f, 0.625000f, 0.250000f, - 0.492632f, 0.496143f, 0.492632f, -0.511046f, 0.691132f, -0.511047f, 0.500000f, 0.375000f, - 0.390289f, 0.496143f, 0.576761f, -0.402782f, 0.690651f, -0.600640f, 0.625000f, 0.375000f, - 0.272335f, 0.496143f, 0.640074f, -0.278184f, 0.690558f, -0.667641f, 0.750000f, 0.375000f, - 0.394629f, 0.499219f, 0.583174f, 0.000000f, 1.000000f, -0.000000f, 0.625000f, 0.500000f, - 0.140635f, 0.486914f, 0.676430f, -0.195233f, 0.094801f, -0.976164f, 0.875000f, 0.250000f, - 0.272335f, 0.496143f, 0.640074f, -0.278184f, 0.690558f, -0.667641f, 0.750000f, 0.375000f, - 0.141371f, 0.496143f, 0.679971f, -0.142021f, 0.689625f, -0.710104f, 0.875000f, 0.375000f, - 0.000000f, 0.496143f, 0.693848f, 0.000000f, 0.689656f, -0.724137f, 1.000000f, 0.375000f, - 0.142943f, 0.499219f, 0.687531f, 0.000000f, 1.000000f, -0.000000f, 0.875000f, 0.500000f, - 0.647191f, 0.499219f, 0.275363f, 0.000000f, 1.000000f, -0.000000f, 0.250000f, 0.500000f, - 0.724609f, 0.486914f, -0.000000f, 0.690476f, 0.723356f, -0.000000f, 0.000000f, 0.750000f, - 0.668452f, 0.486914f, 0.284409f, 0.637619f, 0.723090f, 0.265674f, 0.250000f, 0.750000f, - 0.514473f, 0.486914f, 0.514473f, 0.487196f, 0.724762f, 0.487196f, 0.500000f, 0.750000f, - 0.691875f, 0.450000f, 0.294375f, 0.833528f, 0.429664f, 0.347303f, 0.250000f, 1.000000f, - 0.687531f, 0.499219f, 0.142943f, 0.000000f, 1.000000f, -0.000000f, 0.125000f, 0.500000f, - 0.712207f, 0.496143f, -0.000000f, 0.464835f, 0.885397f, -0.000000f, 0.000000f, 0.625000f, - 0.697963f, 0.496143f, 0.145112f, 0.455789f, 0.885407f, 0.091158f, 0.125000f, 0.625000f, - 0.657011f, 0.496143f, 0.279541f, 0.428239f, 0.885874f, 0.178433f, 0.250000f, 0.625000f, - 0.710117f, 0.486914f, 0.147639f, 0.677049f, 0.723373f, 0.135410f, 0.125000f, 0.750000f, - 0.583174f, 0.499219f, 0.394629f, 0.000000f, 1.000000f, -0.000000f, 0.375000f, 0.500000f, - 0.657011f, 0.496143f, 0.279541f, 0.428239f, 0.885874f, 0.178433f, 0.250000f, 0.625000f, - 0.592022f, 0.496143f, 0.400616f, 0.385216f, 0.885934f, 0.258322f, 0.375000f, 0.625000f, - 0.505667f, 0.496143f, 0.505667f, 0.327637f, 0.886176f, 0.327636f, 0.500000f, 0.625000f, - 0.602332f, 0.486914f, 0.407593f, 0.572629f, 0.724322f, 0.383998f, 0.375000f, 0.750000f, - 0.710117f, 0.486914f, 0.147639f, 0.677049f, 0.723373f, 0.135410f, 0.125000f, 0.750000f, - 0.737598f, 0.471533f, -0.000000f, 0.819842f, 0.572589f, -0.000000f, 0.000000f, 0.875000f, - 0.722846f, 0.471533f, 0.150286f, 0.803908f, 0.572609f, 0.160782f, 0.125000f, 0.875000f, - 0.680434f, 0.471533f, 0.289507f, 0.756157f, 0.573550f, 0.315066f, 0.250000f, 0.875000f, - 0.735000f, 0.450000f, 0.152812f, 0.885319f, 0.429952f, 0.177064f, 0.125000f, 1.000000f, - 0.602332f, 0.486914f, 0.407593f, 0.572628f, 0.724322f, 0.383998f, 0.375000f, 0.750000f, - 0.680434f, 0.471533f, 0.289507f, 0.756158f, 0.573550f, 0.315065f, 0.250000f, 0.875000f, - 0.613128f, 0.471533f, 0.414899f, 0.680288f, 0.573668f, 0.456193f, 0.375000f, 0.875000f, - 0.523694f, 0.471533f, 0.523694f, 0.578938f, 0.574162f, 0.578938f, 0.500000f, 0.875000f, - 0.623438f, 0.450000f, 0.421875f, 0.749476f, 0.430918f, 0.502589f, 0.375000f, 1.000000f, - 0.275363f, 0.499219f, 0.647191f, 0.000000f, 1.000000f, -0.000000f, 0.750000f, 0.500000f, - 0.514473f, 0.486914f, 0.514473f, 0.487196f, 0.724762f, 0.487196f, 0.500000f, 0.750000f, - 0.284409f, 0.486914f, 0.668452f, 0.265781f, 0.722825f, 0.637875f, 0.750000f, 0.750000f, - 0.000000f, 0.486914f, 0.724609f, 0.000000f, 0.723356f, 0.690476f, 1.000000f, 0.750000f, - 0.294375f, 0.450000f, 0.691875f, 0.347353f, 0.429394f, 0.833647f, 0.750000f, 1.000000f, - 0.394629f, 0.499219f, 0.583174f, 0.000000f, 1.000000f, -0.000000f, 0.625000f, 0.500000f, - 0.505667f, 0.496143f, 0.505667f, 0.327636f, 0.886176f, 0.327637f, 0.500000f, 0.625000f, - 0.400616f, 0.496143f, 0.592022f, 0.258332f, 0.885924f, 0.385231f, 0.625000f, 0.625000f, - 0.279541f, 0.496143f, 0.657011f, 0.178433f, 0.885874f, 0.428239f, 0.750000f, 0.625000f, - 0.407593f, 0.486914f, 0.602332f, 0.384008f, 0.724305f, 0.572644f, 0.625000f, 0.750000f, - 0.142943f, 0.499219f, 0.687531f, 0.000000f, 1.000000f, -0.000000f, 0.875000f, 0.500000f, - 0.279541f, 0.496143f, 0.657011f, 0.178433f, 0.885874f, 0.428239f, 0.750000f, 0.625000f, - 0.145112f, 0.496143f, 0.697963f, 0.091168f, 0.885381f, 0.455839f, 0.875000f, 0.625000f, - 0.000000f, 0.496143f, 0.712207f, 0.000000f, 0.885397f, 0.464835f, 1.000000f, 0.625000f, - 0.147639f, 0.486914f, 0.710117f, 0.135420f, 0.723325f, 0.677099f, 0.875000f, 0.750000f, - 0.407593f, 0.486914f, 0.602332f, 0.384008f, 0.724305f, 0.572643f, 0.625000f, 0.750000f, - 0.523694f, 0.471533f, 0.523694f, 0.578938f, 0.574162f, 0.578938f, 0.500000f, 0.875000f, - 0.414899f, 0.471533f, 0.613128f, 0.456201f, 0.573650f, 0.680299f, 0.625000f, 0.875000f, - 0.289507f, 0.471533f, 0.680434f, 0.315065f, 0.573550f, 0.756158f, 0.750000f, 0.875000f, - 0.421875f, 0.450000f, 0.623438f, 0.502594f, 0.430901f, 0.749482f, 0.625000f, 1.000000f, - 0.147639f, 0.486914f, 0.710117f, 0.135420f, 0.723325f, 0.677099f, 0.875000f, 0.750000f, - 0.289507f, 0.471533f, 0.680434f, 0.315066f, 0.573550f, 0.756157f, 0.750000f, 0.875000f, - 0.150286f, 0.471533f, 0.722846f, 0.160789f, 0.572555f, 0.803945f, 0.875000f, 0.875000f, - 0.000000f, 0.471533f, 0.737598f, 0.000000f, 0.572589f, 0.819842f, 1.000000f, 0.875000f, - 0.152812f, 0.450000f, 0.735000f, 0.177068f, 0.429904f, 0.885342f, 0.875000f, 1.000000f, - 0.000000f, 0.450000f, 0.700000f, -0.000000f, -0.429934f, -0.902860f, 0.000000f, 0.000000f, - -0.700000f, 0.450000f, -0.000000f, 0.902860f, -0.429934f, 0.000000f, 1.000000f, 0.000000f, - 0.000000f, 0.450000f, 0.750000f, 0.000000f, 0.429934f, 0.902860f, 0.000000f, 1.000000f, - -0.750000f, 0.450000f, -0.000000f, -0.902860f, 0.429934f, 0.000000f, 1.000000f, 1.000000f, - -0.497000f, 0.450000f, 0.497000f, 0.639602f, -0.426402f, -0.639602f, 0.500000f, 0.000000f, - 0.000000f, 0.499219f, 0.701563f, 0.000000f, 1.000000f, -0.000000f, 0.000000f, 0.500000f, - -0.498109f, 0.499219f, 0.498109f, 0.000000f, 1.000000f, 0.000000f, 0.500000f, 0.500000f, - -0.701563f, 0.499219f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, 0.500000f, - -0.532500f, 0.450000f, 0.532500f, -0.639602f, 0.426402f, 0.639602f, 0.500000f, 1.000000f, - -0.274750f, 0.450000f, 0.645750f, 0.347303f, -0.429664f, -0.833528f, 0.250000f, 0.000000f, - 0.000000f, 0.486914f, 0.690234f, 0.000000f, 0.094810f, -0.995495f, 0.000000f, 0.250000f, - -0.270917f, 0.486914f, 0.636741f, 0.382885f, 0.094737f, -0.918925f, 0.250000f, 0.250000f, - -0.490066f, 0.486914f, 0.490066f, 0.703896f, 0.095194f, -0.703896f, 0.500000f, 0.250000f, - -0.275363f, 0.499219f, 0.647191f, 0.000000f, 1.000000f, 0.000000f, 0.250000f, 0.500000f, - -0.142625f, 0.450000f, 0.686000f, 0.177064f, -0.429953f, -0.885319f, 0.125000f, 0.000000f, - 0.000000f, 0.471533f, 0.691895f, -0.000000f, -0.246154f, -0.969231f, 0.000000f, 0.125000f, - -0.140974f, 0.471533f, 0.678057f, 0.190081f, -0.246166f, -0.950406f, 0.125000f, 0.125000f, - -0.271569f, 0.471533f, 0.638273f, 0.372725f, -0.246731f, -0.894539f, 0.250000f, 0.125000f, - -0.140635f, 0.486914f, 0.676430f, 0.195233f, 0.094813f, -0.976163f, 0.125000f, 0.250000f, - -0.393750f, 0.450000f, 0.581875f, 0.502590f, -0.430917f, -0.749476f, 0.375000f, 0.000000f, - -0.271569f, 0.471533f, 0.638273f, 0.372725f, -0.246731f, -0.894539f, 0.250000f, 0.125000f, - -0.389191f, 0.471533f, 0.575137f, 0.539724f, -0.246803f, -0.804852f, 0.375000f, 0.125000f, - -0.491245f, 0.471533f, 0.491245f, 0.685180f, -0.247099f, -0.685179f, 0.500000f, 0.125000f, - -0.388257f, 0.486914f, 0.573757f, 0.554430f, 0.095071f, -0.826782f, 0.375000f, 0.250000f, - -0.140635f, 0.486914f, 0.676430f, 0.195233f, 0.094813f, -0.976163f, 0.125000f, 0.250000f, - 0.000000f, 0.496143f, 0.693848f, 0.000000f, 0.689656f, -0.724137f, 0.000000f, 0.375000f, - -0.141371f, 0.496143f, 0.679971f, 0.142011f, 0.689675f, -0.710057f, 0.125000f, 0.375000f, - -0.272335f, 0.496143f, 0.640074f, 0.278184f, 0.690558f, -0.667641f, 0.250000f, 0.375000f, - -0.142943f, 0.499219f, 0.687531f, 0.000000f, 1.000000f, 0.000000f, 0.125000f, 0.500000f, - -0.388257f, 0.486914f, 0.573757f, 0.554430f, 0.095071f, -0.826782f, 0.375000f, 0.250000f, - -0.272335f, 0.496143f, 0.640074f, 0.278184f, 0.690558f, -0.667641f, 0.250000f, 0.375000f, - -0.390289f, 0.496143f, 0.576761f, 0.402773f, 0.690668f, -0.600626f, 0.375000f, 0.375000f, - -0.492632f, 0.496143f, 0.492632f, 0.511046f, 0.691132f, -0.511047f, 0.500000f, 0.375000f, - -0.394629f, 0.499219f, 0.583174f, 0.000000f, 1.000000f, 0.000000f, 0.375000f, 0.500000f, - -0.645750f, 0.450000f, 0.274750f, 0.833647f, -0.429394f, -0.347353f, 0.750000f, 0.000000f, - -0.490066f, 0.486914f, 0.490066f, 0.703896f, 0.095194f, -0.703896f, 0.500000f, 0.250000f, - -0.636741f, 0.486914f, 0.270917f, 0.918932f, 0.094664f, -0.382888f, 0.750000f, 0.250000f, - -0.690234f, 0.486914f, -0.000000f, 0.995495f, 0.094810f, 0.000000f, 1.000000f, 0.250000f, - -0.647191f, 0.499219f, 0.275363f, 0.000000f, 1.000000f, 0.000000f, 0.750000f, 0.500000f, - -0.581875f, 0.450000f, 0.393750f, 0.749483f, -0.430900f, -0.502594f, 0.625000f, 0.000000f, - -0.491245f, 0.471533f, 0.491245f, 0.685179f, -0.247099f, -0.685180f, 0.500000f, 0.125000f, - -0.575137f, 0.471533f, 0.389191f, 0.804854f, -0.246792f, -0.539726f, 0.625000f, 0.125000f, - -0.638273f, 0.471533f, 0.271569f, 0.894539f, -0.246731f, -0.372725f, 0.750000f, 0.125000f, - -0.573757f, 0.486914f, 0.388257f, 0.826782f, 0.095066f, -0.554431f, 0.625000f, 0.250000f, - -0.686000f, 0.450000f, 0.142625f, 0.885342f, -0.429904f, -0.177068f, 0.875000f, 0.000000f, - -0.638273f, 0.471533f, 0.271569f, 0.894539f, -0.246731f, -0.372725f, 0.750000f, 0.125000f, - -0.678057f, 0.471533f, 0.140974f, 0.950414f, -0.246134f, -0.190083f, 0.875000f, 0.125000f, - -0.691895f, 0.471533f, -0.000000f, 0.969231f, -0.246154f, 0.000000f, 1.000000f, 0.125000f, - -0.676430f, 0.486914f, 0.140635f, 0.976164f, 0.094801f, -0.195233f, 0.875000f, 0.250000f, - -0.573757f, 0.486914f, 0.388257f, 0.826782f, 0.095066f, -0.554431f, 0.625000f, 0.250000f, - -0.492632f, 0.496143f, 0.492632f, 0.511047f, 0.691132f, -0.511046f, 0.500000f, 0.375000f, - -0.576761f, 0.496143f, 0.390289f, 0.600640f, 0.690651f, -0.402782f, 0.625000f, 0.375000f, - -0.640074f, 0.496143f, 0.272335f, 0.667641f, 0.690558f, -0.278184f, 0.750000f, 0.375000f, - -0.583174f, 0.499219f, 0.394629f, 0.000000f, 1.000000f, 0.000000f, 0.625000f, 0.500000f, - -0.676430f, 0.486914f, 0.140635f, 0.976164f, 0.094801f, -0.195233f, 0.875000f, 0.250000f, - -0.640074f, 0.496143f, 0.272335f, 0.667641f, 0.690558f, -0.278184f, 0.750000f, 0.375000f, - -0.679971f, 0.496143f, 0.141371f, 0.710104f, 0.689625f, -0.142021f, 0.875000f, 0.375000f, - -0.693848f, 0.496143f, -0.000000f, 0.724137f, 0.689656f, 0.000000f, 1.000000f, 0.375000f, - -0.687531f, 0.499219f, 0.142943f, 0.000000f, 1.000000f, 0.000000f, 0.875000f, 0.500000f, - -0.275363f, 0.499219f, 0.647191f, 0.000000f, 1.000000f, 0.000000f, 0.250000f, 0.500000f, - 0.000000f, 0.486914f, 0.724609f, 0.000000f, 0.723356f, 0.690476f, 0.000000f, 0.750000f, - -0.284409f, 0.486914f, 0.668452f, -0.265674f, 0.723090f, 0.637619f, 0.250000f, 0.750000f, - -0.514473f, 0.486914f, 0.514473f, -0.487196f, 0.724762f, 0.487196f, 0.500000f, 0.750000f, - -0.294375f, 0.450000f, 0.691875f, -0.347303f, 0.429664f, 0.833528f, 0.250000f, 1.000000f, - -0.142943f, 0.499219f, 0.687531f, 0.000000f, 1.000000f, 0.000000f, 0.125000f, 0.500000f, - 0.000000f, 0.496143f, 0.712207f, 0.000000f, 0.885397f, 0.464835f, 0.000000f, 0.625000f, - -0.145112f, 0.496143f, 0.697963f, -0.091158f, 0.885407f, 0.455789f, 0.125000f, 0.625000f, - -0.279541f, 0.496143f, 0.657011f, -0.178433f, 0.885874f, 0.428239f, 0.250000f, 0.625000f, - -0.147639f, 0.486914f, 0.710117f, -0.135410f, 0.723373f, 0.677049f, 0.125000f, 0.750000f, - -0.394629f, 0.499219f, 0.583174f, 0.000000f, 1.000000f, 0.000000f, 0.375000f, 0.500000f, - -0.279541f, 0.496143f, 0.657011f, -0.178433f, 0.885874f, 0.428239f, 0.250000f, 0.625000f, - -0.400616f, 0.496143f, 0.592022f, -0.258322f, 0.885934f, 0.385216f, 0.375000f, 0.625000f, - -0.505667f, 0.496143f, 0.505667f, -0.327636f, 0.886176f, 0.327637f, 0.500000f, 0.625000f, - -0.407593f, 0.486914f, 0.602332f, -0.383998f, 0.724322f, 0.572629f, 0.375000f, 0.750000f, - -0.147639f, 0.486914f, 0.710117f, -0.135410f, 0.723373f, 0.677049f, 0.125000f, 0.750000f, - 0.000000f, 0.471533f, 0.737598f, 0.000000f, 0.572589f, 0.819842f, 0.000000f, 0.875000f, - -0.150286f, 0.471533f, 0.722846f, -0.160782f, 0.572609f, 0.803908f, 0.125000f, 0.875000f, - -0.289507f, 0.471533f, 0.680434f, -0.315066f, 0.573550f, 0.756157f, 0.250000f, 0.875000f, - -0.152812f, 0.450000f, 0.735000f, -0.177064f, 0.429952f, 0.885319f, 0.125000f, 1.000000f, - -0.407593f, 0.486914f, 0.602332f, -0.383998f, 0.724322f, 0.572628f, 0.375000f, 0.750000f, - -0.289507f, 0.471533f, 0.680434f, -0.315065f, 0.573550f, 0.756158f, 0.250000f, 0.875000f, - -0.414899f, 0.471533f, 0.613128f, -0.456193f, 0.573668f, 0.680288f, 0.375000f, 0.875000f, - -0.523694f, 0.471533f, 0.523694f, -0.578938f, 0.574162f, 0.578938f, 0.500000f, 0.875000f, - -0.421875f, 0.450000f, 0.623438f, -0.502589f, 0.430918f, 0.749476f, 0.375000f, 1.000000f, - -0.647191f, 0.499219f, 0.275363f, 0.000000f, 1.000000f, 0.000000f, 0.750000f, 0.500000f, - -0.514473f, 0.486914f, 0.514473f, -0.487196f, 0.724762f, 0.487196f, 0.500000f, 0.750000f, - -0.668452f, 0.486914f, 0.284409f, -0.637875f, 0.722825f, 0.265781f, 0.750000f, 0.750000f, - -0.724609f, 0.486914f, -0.000000f, -0.690476f, 0.723356f, 0.000000f, 1.000000f, 0.750000f, - -0.691875f, 0.450000f, 0.294375f, -0.833647f, 0.429394f, 0.347353f, 0.750000f, 1.000000f, - -0.583174f, 0.499219f, 0.394629f, 0.000000f, 1.000000f, 0.000000f, 0.625000f, 0.500000f, - -0.505667f, 0.496143f, 0.505667f, -0.327637f, 0.886176f, 0.327636f, 0.500000f, 0.625000f, - -0.592022f, 0.496143f, 0.400616f, -0.385231f, 0.885924f, 0.258332f, 0.625000f, 0.625000f, - -0.657011f, 0.496143f, 0.279541f, -0.428239f, 0.885874f, 0.178433f, 0.750000f, 0.625000f, - -0.602332f, 0.486914f, 0.407593f, -0.572644f, 0.724305f, 0.384008f, 0.625000f, 0.750000f, - -0.687531f, 0.499219f, 0.142943f, 0.000000f, 1.000000f, 0.000000f, 0.875000f, 0.500000f, - -0.657011f, 0.496143f, 0.279541f, -0.428239f, 0.885874f, 0.178433f, 0.750000f, 0.625000f, - -0.697963f, 0.496143f, 0.145112f, -0.455839f, 0.885381f, 0.091168f, 0.875000f, 0.625000f, - -0.712207f, 0.496143f, -0.000000f, -0.464835f, 0.885397f, 0.000000f, 1.000000f, 0.625000f, - -0.710117f, 0.486914f, 0.147639f, -0.677099f, 0.723325f, 0.135420f, 0.875000f, 0.750000f, - -0.602332f, 0.486914f, 0.407593f, -0.572643f, 0.724305f, 0.384008f, 0.625000f, 0.750000f, - -0.523694f, 0.471533f, 0.523694f, -0.578938f, 0.574162f, 0.578938f, 0.500000f, 0.875000f, - -0.613128f, 0.471533f, 0.414899f, -0.680299f, 0.573650f, 0.456201f, 0.625000f, 0.875000f, - -0.680434f, 0.471533f, 0.289507f, -0.756158f, 0.573550f, 0.315065f, 0.750000f, 0.875000f, - -0.623438f, 0.450000f, 0.421875f, -0.749482f, 0.430901f, 0.502594f, 0.625000f, 1.000000f, - -0.710117f, 0.486914f, 0.147639f, -0.677099f, 0.723325f, 0.135420f, 0.875000f, 0.750000f, - -0.680434f, 0.471533f, 0.289507f, -0.756157f, 0.573550f, 0.315066f, 0.750000f, 0.875000f, - -0.722846f, 0.471533f, 0.150286f, -0.803945f, 0.572555f, 0.160789f, 0.875000f, 0.875000f, - -0.737598f, 0.471533f, -0.000000f, -0.819842f, 0.572589f, 0.000000f, 1.000000f, 0.875000f, - -0.735000f, 0.450000f, 0.152812f, -0.885342f, 0.429904f, 0.177068f, 0.875000f, 1.000000f, - -0.700000f, 0.450000f, -0.000000f, 0.902860f, -0.429934f, 0.000000f, 0.000000f, 0.000000f, - 0.000000f, 0.450000f, -0.700000f, 0.000000f, -0.429934f, 0.902860f, 1.000000f, 0.000000f, - -0.750000f, 0.450000f, -0.000000f, -0.902860f, 0.429934f, 0.000000f, 0.000000f, 1.000000f, - 0.000000f, 0.450000f, -0.750000f, 0.000000f, 0.429934f, -0.902860f, 1.000000f, 1.000000f, - -0.497000f, 0.450000f, -0.497000f, 0.639602f, -0.426402f, 0.639602f, 0.500000f, 0.000000f, - -0.701563f, 0.499219f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 0.000000f, 0.500000f, - -0.498109f, 0.499219f, -0.498109f, 0.000000f, 1.000000f, 0.000000f, 0.500000f, 0.500000f, - 0.000000f, 0.499219f, -0.701563f, -0.000000f, 1.000000f, 0.000000f, 1.000000f, 0.500000f, - -0.532500f, 0.450000f, -0.532500f, -0.639602f, 0.426402f, -0.639602f, 0.500000f, 1.000000f, - -0.645750f, 0.450000f, -0.274750f, 0.833528f, -0.429664f, 0.347303f, 0.250000f, 0.000000f, - -0.690234f, 0.486914f, -0.000000f, 0.995495f, 0.094810f, 0.000000f, 0.000000f, 0.250000f, - -0.636741f, 0.486914f, -0.270917f, 0.918925f, 0.094737f, 0.382885f, 0.250000f, 0.250000f, - -0.490066f, 0.486914f, -0.490066f, 0.703896f, 0.095194f, 0.703896f, 0.500000f, 0.250000f, - -0.647191f, 0.499219f, -0.275363f, 0.000000f, 1.000000f, 0.000000f, 0.250000f, 0.500000f, - -0.686000f, 0.450000f, -0.142625f, 0.885319f, -0.429953f, 0.177064f, 0.125000f, 0.000000f, - -0.691895f, 0.471533f, -0.000000f, 0.969231f, -0.246154f, 0.000000f, 0.000000f, 0.125000f, - -0.678057f, 0.471533f, -0.140974f, 0.950406f, -0.246166f, 0.190081f, 0.125000f, 0.125000f, - -0.638273f, 0.471533f, -0.271569f, 0.894539f, -0.246731f, 0.372725f, 0.250000f, 0.125000f, - -0.676430f, 0.486914f, -0.140635f, 0.976163f, 0.094813f, 0.195233f, 0.125000f, 0.250000f, - -0.581875f, 0.450000f, -0.393750f, 0.749476f, -0.430917f, 0.502590f, 0.375000f, 0.000000f, - -0.638273f, 0.471533f, -0.271569f, 0.894539f, -0.246731f, 0.372725f, 0.250000f, 0.125000f, - -0.575137f, 0.471533f, -0.389191f, 0.804852f, -0.246803f, 0.539724f, 0.375000f, 0.125000f, - -0.491245f, 0.471533f, -0.491245f, 0.685179f, -0.247099f, 0.685180f, 0.500000f, 0.125000f, - -0.573757f, 0.486914f, -0.388257f, 0.826782f, 0.095071f, 0.554430f, 0.375000f, 0.250000f, - -0.676430f, 0.486914f, -0.140635f, 0.976163f, 0.094813f, 0.195233f, 0.125000f, 0.250000f, - -0.693848f, 0.496143f, -0.000000f, 0.724137f, 0.689656f, 0.000000f, 0.000000f, 0.375000f, - -0.679971f, 0.496143f, -0.141371f, 0.710057f, 0.689675f, 0.142011f, 0.125000f, 0.375000f, - -0.640074f, 0.496143f, -0.272335f, 0.667641f, 0.690558f, 0.278184f, 0.250000f, 0.375000f, - -0.687531f, 0.499219f, -0.142943f, 0.000000f, 1.000000f, 0.000000f, 0.125000f, 0.500000f, - -0.573757f, 0.486914f, -0.388257f, 0.826782f, 0.095071f, 0.554430f, 0.375000f, 0.250000f, - -0.640074f, 0.496143f, -0.272335f, 0.667641f, 0.690558f, 0.278184f, 0.250000f, 0.375000f, - -0.576761f, 0.496143f, -0.390289f, 0.600626f, 0.690668f, 0.402773f, 0.375000f, 0.375000f, - -0.492632f, 0.496143f, -0.492632f, 0.511047f, 0.691132f, 0.511046f, 0.500000f, 0.375000f, - -0.583174f, 0.499219f, -0.394629f, 0.000000f, 1.000000f, 0.000000f, 0.375000f, 0.500000f, - -0.274750f, 0.450000f, -0.645750f, 0.347353f, -0.429394f, 0.833647f, 0.750000f, 0.000000f, - -0.490066f, 0.486914f, -0.490066f, 0.703896f, 0.095194f, 0.703896f, 0.500000f, 0.250000f, - -0.270917f, 0.486914f, -0.636741f, 0.382888f, 0.094664f, 0.918932f, 0.750000f, 0.250000f, - 0.000000f, 0.486914f, -0.690234f, -0.000000f, 0.094810f, 0.995495f, 1.000000f, 0.250000f, - -0.275363f, 0.499219f, -0.647191f, 0.000000f, 1.000000f, 0.000000f, 0.750000f, 0.500000f, - -0.393750f, 0.450000f, -0.581875f, 0.502594f, -0.430900f, 0.749483f, 0.625000f, 0.000000f, - -0.491245f, 0.471533f, -0.491245f, 0.685180f, -0.247099f, 0.685179f, 0.500000f, 0.125000f, - -0.389191f, 0.471533f, -0.575137f, 0.539726f, -0.246792f, 0.804854f, 0.625000f, 0.125000f, - -0.271569f, 0.471533f, -0.638273f, 0.372725f, -0.246731f, 0.894539f, 0.750000f, 0.125000f, - -0.388257f, 0.486914f, -0.573757f, 0.554431f, 0.095066f, 0.826782f, 0.625000f, 0.250000f, - -0.142625f, 0.450000f, -0.686000f, 0.177068f, -0.429904f, 0.885342f, 0.875000f, 0.000000f, - -0.271569f, 0.471533f, -0.638273f, 0.372725f, -0.246731f, 0.894539f, 0.750000f, 0.125000f, - -0.140974f, 0.471533f, -0.678057f, 0.190083f, -0.246134f, 0.950414f, 0.875000f, 0.125000f, - 0.000000f, 0.471533f, -0.691895f, 0.000000f, -0.246154f, 0.969231f, 1.000000f, 0.125000f, - -0.140635f, 0.486914f, -0.676430f, 0.195233f, 0.094801f, 0.976164f, 0.875000f, 0.250000f, - -0.388257f, 0.486914f, -0.573757f, 0.554431f, 0.095066f, 0.826782f, 0.625000f, 0.250000f, - -0.492632f, 0.496143f, -0.492632f, 0.511046f, 0.691132f, 0.511047f, 0.500000f, 0.375000f, - -0.390289f, 0.496143f, -0.576761f, 0.402782f, 0.690651f, 0.600640f, 0.625000f, 0.375000f, - -0.272335f, 0.496143f, -0.640074f, 0.278184f, 0.690558f, 0.667641f, 0.750000f, 0.375000f, - -0.394629f, 0.499219f, -0.583174f, 0.000000f, 1.000000f, 0.000000f, 0.625000f, 0.500000f, - -0.140635f, 0.486914f, -0.676430f, 0.195233f, 0.094801f, 0.976164f, 0.875000f, 0.250000f, - -0.272335f, 0.496143f, -0.640074f, 0.278184f, 0.690558f, 0.667641f, 0.750000f, 0.375000f, - -0.141371f, 0.496143f, -0.679971f, 0.142021f, 0.689625f, 0.710104f, 0.875000f, 0.375000f, - 0.000000f, 0.496143f, -0.693848f, -0.000000f, 0.689656f, 0.724137f, 1.000000f, 0.375000f, - -0.142943f, 0.499219f, -0.687531f, 0.000000f, 1.000000f, 0.000000f, 0.875000f, 0.500000f, - -0.647191f, 0.499219f, -0.275363f, 0.000000f, 1.000000f, 0.000000f, 0.250000f, 0.500000f, - -0.724609f, 0.486914f, -0.000000f, -0.690476f, 0.723356f, 0.000000f, 0.000000f, 0.750000f, - -0.668452f, 0.486914f, -0.284409f, -0.637619f, 0.723090f, -0.265674f, 0.250000f, 0.750000f, - -0.514473f, 0.486914f, -0.514473f, -0.487196f, 0.724762f, -0.487196f, 0.500000f, 0.750000f, - -0.691875f, 0.450000f, -0.294375f, -0.833528f, 0.429664f, -0.347303f, 0.250000f, 1.000000f, - -0.687531f, 0.499219f, -0.142943f, 0.000000f, 1.000000f, 0.000000f, 0.125000f, 0.500000f, - -0.712207f, 0.496143f, -0.000000f, -0.464835f, 0.885397f, 0.000000f, 0.000000f, 0.625000f, - -0.697963f, 0.496143f, -0.145112f, -0.455789f, 0.885407f, -0.091158f, 0.125000f, 0.625000f, - -0.657011f, 0.496143f, -0.279541f, -0.428239f, 0.885874f, -0.178433f, 0.250000f, 0.625000f, - -0.710117f, 0.486914f, -0.147639f, -0.677049f, 0.723373f, -0.135410f, 0.125000f, 0.750000f, - -0.583174f, 0.499219f, -0.394629f, 0.000000f, 1.000000f, 0.000000f, 0.375000f, 0.500000f, - -0.657011f, 0.496143f, -0.279541f, -0.428239f, 0.885874f, -0.178433f, 0.250000f, 0.625000f, - -0.592022f, 0.496143f, -0.400616f, -0.385216f, 0.885934f, -0.258322f, 0.375000f, 0.625000f, - -0.505667f, 0.496143f, -0.505667f, -0.327637f, 0.886176f, -0.327636f, 0.500000f, 0.625000f, - -0.602332f, 0.486914f, -0.407593f, -0.572629f, 0.724322f, -0.383998f, 0.375000f, 0.750000f, - -0.710117f, 0.486914f, -0.147639f, -0.677049f, 0.723373f, -0.135410f, 0.125000f, 0.750000f, - -0.737598f, 0.471533f, -0.000000f, -0.819842f, 0.572589f, 0.000000f, 0.000000f, 0.875000f, - -0.722846f, 0.471533f, -0.150286f, -0.803908f, 0.572609f, -0.160782f, 0.125000f, 0.875000f, - -0.680434f, 0.471533f, -0.289507f, -0.756157f, 0.573550f, -0.315066f, 0.250000f, 0.875000f, - -0.735000f, 0.450000f, -0.152812f, -0.885319f, 0.429952f, -0.177064f, 0.125000f, 1.000000f, - -0.602332f, 0.486914f, -0.407593f, -0.572628f, 0.724322f, -0.383998f, 0.375000f, 0.750000f, - -0.680434f, 0.471533f, -0.289507f, -0.756158f, 0.573550f, -0.315065f, 0.250000f, 0.875000f, - -0.613128f, 0.471533f, -0.414899f, -0.680288f, 0.573668f, -0.456193f, 0.375000f, 0.875000f, - -0.523694f, 0.471533f, -0.523694f, -0.578938f, 0.574162f, -0.578938f, 0.500000f, 0.875000f, - -0.623438f, 0.450000f, -0.421875f, -0.749476f, 0.430918f, -0.502589f, 0.375000f, 1.000000f, - -0.275363f, 0.499219f, -0.647191f, 0.000000f, 1.000000f, 0.000000f, 0.750000f, 0.500000f, - -0.514473f, 0.486914f, -0.514473f, -0.487196f, 0.724762f, -0.487196f, 0.500000f, 0.750000f, - -0.284409f, 0.486914f, -0.668452f, -0.265781f, 0.722825f, -0.637875f, 0.750000f, 0.750000f, - 0.000000f, 0.486914f, -0.724609f, 0.000000f, 0.723356f, -0.690476f, 1.000000f, 0.750000f, - -0.294375f, 0.450000f, -0.691875f, -0.347353f, 0.429394f, -0.833647f, 0.750000f, 1.000000f, - -0.394629f, 0.499219f, -0.583174f, 0.000000f, 1.000000f, 0.000000f, 0.625000f, 0.500000f, - -0.505667f, 0.496143f, -0.505667f, -0.327636f, 0.886176f, -0.327637f, 0.500000f, 0.625000f, - -0.400616f, 0.496143f, -0.592022f, -0.258332f, 0.885924f, -0.385231f, 0.625000f, 0.625000f, - -0.279541f, 0.496143f, -0.657011f, -0.178433f, 0.885874f, -0.428239f, 0.750000f, 0.625000f, - -0.407593f, 0.486914f, -0.602332f, -0.384008f, 0.724305f, -0.572644f, 0.625000f, 0.750000f, - -0.142943f, 0.499219f, -0.687531f, 0.000000f, 1.000000f, 0.000000f, 0.875000f, 0.500000f, - -0.279541f, 0.496143f, -0.657011f, -0.178433f, 0.885874f, -0.428239f, 0.750000f, 0.625000f, - -0.145112f, 0.496143f, -0.697963f, -0.091168f, 0.885381f, -0.455839f, 0.875000f, 0.625000f, - 0.000000f, 0.496143f, -0.712207f, 0.000000f, 0.885397f, -0.464835f, 1.000000f, 0.625000f, - -0.147639f, 0.486914f, -0.710117f, -0.135420f, 0.723325f, -0.677099f, 0.875000f, 0.750000f, - -0.407593f, 0.486914f, -0.602332f, -0.384008f, 0.724305f, -0.572643f, 0.625000f, 0.750000f, - -0.523694f, 0.471533f, -0.523694f, -0.578938f, 0.574162f, -0.578938f, 0.500000f, 0.875000f, - -0.414899f, 0.471533f, -0.613128f, -0.456201f, 0.573650f, -0.680299f, 0.625000f, 0.875000f, - -0.289507f, 0.471533f, -0.680434f, -0.315065f, 0.573550f, -0.756158f, 0.750000f, 0.875000f, - -0.421875f, 0.450000f, -0.623438f, -0.502594f, 0.430901f, -0.749482f, 0.625000f, 1.000000f, - -0.147639f, 0.486914f, -0.710117f, -0.135420f, 0.723325f, -0.677099f, 0.875000f, 0.750000f, - -0.289507f, 0.471533f, -0.680434f, -0.315066f, 0.573550f, -0.756157f, 0.750000f, 0.875000f, - -0.150286f, 0.471533f, -0.722846f, -0.160789f, 0.572555f, -0.803945f, 0.875000f, 0.875000f, - 0.000000f, 0.471533f, -0.737598f, 0.000000f, 0.572589f, -0.819842f, 1.000000f, 0.875000f, - -0.152812f, 0.450000f, -0.735000f, -0.177068f, 0.429904f, -0.885342f, 0.875000f, 1.000000f, - 0.000000f, 0.450000f, -0.700000f, 0.000000f, -0.429934f, 0.902860f, 0.000000f, 0.000000f, - 0.700000f, 0.450000f, -0.000000f, -0.902860f, -0.429934f, 0.000000f, 1.000000f, 0.000000f, - 0.000000f, 0.450000f, -0.750000f, 0.000000f, 0.429934f, -0.902860f, 0.000000f, 1.000000f, - 0.750000f, 0.450000f, -0.000000f, 0.902860f, 0.429934f, -0.000000f, 1.000000f, 1.000000f, - 0.497000f, 0.450000f, -0.497000f, -0.639602f, -0.426402f, 0.639602f, 0.500000f, 0.000000f, - 0.000000f, 0.499219f, -0.701563f, -0.000000f, 1.000000f, 0.000000f, 0.000000f, 0.500000f, - 0.498109f, 0.499219f, -0.498109f, -0.000000f, 1.000000f, 0.000000f, 0.500000f, 0.500000f, - 0.701563f, 0.499219f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, 0.500000f, - 0.532500f, 0.450000f, -0.532500f, 0.639602f, 0.426402f, -0.639602f, 0.500000f, 1.000000f, - 0.274750f, 0.450000f, -0.645750f, -0.347303f, -0.429664f, 0.833528f, 0.250000f, 0.000000f, - 0.000000f, 0.486914f, -0.690234f, -0.000000f, 0.094810f, 0.995495f, 0.000000f, 0.250000f, - 0.270917f, 0.486914f, -0.636741f, -0.382885f, 0.094737f, 0.918925f, 0.250000f, 0.250000f, - 0.490066f, 0.486914f, -0.490066f, -0.703896f, 0.095194f, 0.703896f, 0.500000f, 0.250000f, - 0.275363f, 0.499219f, -0.647191f, -0.000000f, 1.000000f, 0.000000f, 0.250000f, 0.500000f, - 0.142625f, 0.450000f, -0.686000f, -0.177064f, -0.429953f, 0.885319f, 0.125000f, 0.000000f, - 0.000000f, 0.471533f, -0.691895f, 0.000000f, -0.246154f, 0.969231f, 0.000000f, 0.125000f, - 0.140974f, 0.471533f, -0.678057f, -0.190081f, -0.246166f, 0.950406f, 0.125000f, 0.125000f, - 0.271569f, 0.471533f, -0.638273f, -0.372725f, -0.246731f, 0.894539f, 0.250000f, 0.125000f, - 0.140635f, 0.486914f, -0.676430f, -0.195233f, 0.094813f, 0.976163f, 0.125000f, 0.250000f, - 0.393750f, 0.450000f, -0.581875f, -0.502590f, -0.430917f, 0.749476f, 0.375000f, 0.000000f, - 0.271569f, 0.471533f, -0.638273f, -0.372725f, -0.246731f, 0.894539f, 0.250000f, 0.125000f, - 0.389191f, 0.471533f, -0.575137f, -0.539724f, -0.246803f, 0.804852f, 0.375000f, 0.125000f, - 0.491245f, 0.471533f, -0.491245f, -0.685180f, -0.247099f, 0.685179f, 0.500000f, 0.125000f, - 0.388257f, 0.486914f, -0.573757f, -0.554430f, 0.095071f, 0.826782f, 0.375000f, 0.250000f, - 0.140635f, 0.486914f, -0.676430f, -0.195233f, 0.094813f, 0.976163f, 0.125000f, 0.250000f, - 0.000000f, 0.496143f, -0.693848f, -0.000000f, 0.689656f, 0.724137f, 0.000000f, 0.375000f, - 0.141371f, 0.496143f, -0.679971f, -0.142011f, 0.689675f, 0.710057f, 0.125000f, 0.375000f, - 0.272335f, 0.496143f, -0.640074f, -0.278184f, 0.690558f, 0.667641f, 0.250000f, 0.375000f, - 0.142943f, 0.499219f, -0.687531f, -0.000000f, 1.000000f, 0.000000f, 0.125000f, 0.500000f, - 0.388257f, 0.486914f, -0.573757f, -0.554430f, 0.095071f, 0.826782f, 0.375000f, 0.250000f, - 0.272335f, 0.496143f, -0.640074f, -0.278184f, 0.690558f, 0.667641f, 0.250000f, 0.375000f, - 0.390289f, 0.496143f, -0.576761f, -0.402773f, 0.690668f, 0.600626f, 0.375000f, 0.375000f, - 0.492632f, 0.496143f, -0.492632f, -0.511046f, 0.691132f, 0.511047f, 0.500000f, 0.375000f, - 0.394629f, 0.499219f, -0.583174f, -0.000000f, 1.000000f, 0.000000f, 0.375000f, 0.500000f, - 0.645750f, 0.450000f, -0.274750f, -0.833647f, -0.429394f, 0.347353f, 0.750000f, 0.000000f, - 0.490066f, 0.486914f, -0.490066f, -0.703896f, 0.095194f, 0.703896f, 0.500000f, 0.250000f, - 0.636741f, 0.486914f, -0.270917f, -0.918932f, 0.094664f, 0.382888f, 0.750000f, 0.250000f, - 0.690234f, 0.486914f, -0.000000f, -0.995495f, 0.094810f, 0.000000f, 1.000000f, 0.250000f, - 0.647191f, 0.499219f, -0.275363f, -0.000000f, 1.000000f, 0.000000f, 0.750000f, 0.500000f, - 0.581875f, 0.450000f, -0.393750f, -0.749483f, -0.430900f, 0.502594f, 0.625000f, 0.000000f, - 0.491245f, 0.471533f, -0.491245f, -0.685179f, -0.247099f, 0.685180f, 0.500000f, 0.125000f, - 0.575137f, 0.471533f, -0.389191f, -0.804854f, -0.246792f, 0.539726f, 0.625000f, 0.125000f, - 0.638273f, 0.471533f, -0.271569f, -0.894539f, -0.246731f, 0.372725f, 0.750000f, 0.125000f, - 0.573757f, 0.486914f, -0.388257f, -0.826782f, 0.095066f, 0.554431f, 0.625000f, 0.250000f, - 0.686000f, 0.450000f, -0.142625f, -0.885342f, -0.429904f, 0.177068f, 0.875000f, 0.000000f, - 0.638273f, 0.471533f, -0.271569f, -0.894539f, -0.246731f, 0.372725f, 0.750000f, 0.125000f, - 0.678057f, 0.471533f, -0.140974f, -0.950414f, -0.246134f, 0.190083f, 0.875000f, 0.125000f, - 0.691895f, 0.471533f, -0.000000f, -0.969231f, -0.246154f, 0.000000f, 1.000000f, 0.125000f, - 0.676430f, 0.486914f, -0.140635f, -0.976164f, 0.094801f, 0.195233f, 0.875000f, 0.250000f, - 0.573757f, 0.486914f, -0.388257f, -0.826782f, 0.095066f, 0.554431f, 0.625000f, 0.250000f, - 0.492632f, 0.496143f, -0.492632f, -0.511047f, 0.691132f, 0.511046f, 0.500000f, 0.375000f, - 0.576761f, 0.496143f, -0.390289f, -0.600640f, 0.690651f, 0.402782f, 0.625000f, 0.375000f, - 0.640074f, 0.496143f, -0.272335f, -0.667641f, 0.690558f, 0.278184f, 0.750000f, 0.375000f, - 0.583174f, 0.499219f, -0.394629f, -0.000000f, 1.000000f, 0.000000f, 0.625000f, 0.500000f, - 0.676430f, 0.486914f, -0.140635f, -0.976164f, 0.094801f, 0.195233f, 0.875000f, 0.250000f, - 0.640074f, 0.496143f, -0.272335f, -0.667641f, 0.690558f, 0.278184f, 0.750000f, 0.375000f, - 0.679971f, 0.496143f, -0.141371f, -0.710104f, 0.689625f, 0.142021f, 0.875000f, 0.375000f, - 0.693848f, 0.496143f, -0.000000f, -0.724137f, 0.689656f, 0.000000f, 1.000000f, 0.375000f, - 0.687531f, 0.499219f, -0.142943f, -0.000000f, 1.000000f, 0.000000f, 0.875000f, 0.500000f, - 0.275363f, 0.499219f, -0.647191f, -0.000000f, 1.000000f, 0.000000f, 0.250000f, 0.500000f, - 0.000000f, 0.486914f, -0.724609f, 0.000000f, 0.723356f, -0.690476f, 0.000000f, 0.750000f, - 0.284409f, 0.486914f, -0.668452f, 0.265674f, 0.723090f, -0.637619f, 0.250000f, 0.750000f, - 0.514473f, 0.486914f, -0.514473f, 0.487196f, 0.724762f, -0.487196f, 0.500000f, 0.750000f, - 0.294375f, 0.450000f, -0.691875f, 0.347303f, 0.429664f, -0.833528f, 0.250000f, 1.000000f, - 0.142943f, 0.499219f, -0.687531f, -0.000000f, 1.000000f, 0.000000f, 0.125000f, 0.500000f, - 0.000000f, 0.496143f, -0.712207f, 0.000000f, 0.885397f, -0.464835f, 0.000000f, 0.625000f, - 0.145112f, 0.496143f, -0.697963f, 0.091158f, 0.885407f, -0.455789f, 0.125000f, 0.625000f, - 0.279541f, 0.496143f, -0.657011f, 0.178433f, 0.885874f, -0.428239f, 0.250000f, 0.625000f, - 0.147639f, 0.486914f, -0.710117f, 0.135410f, 0.723373f, -0.677049f, 0.125000f, 0.750000f, - 0.394629f, 0.499219f, -0.583174f, -0.000000f, 1.000000f, 0.000000f, 0.375000f, 0.500000f, - 0.279541f, 0.496143f, -0.657011f, 0.178433f, 0.885874f, -0.428239f, 0.250000f, 0.625000f, - 0.400616f, 0.496143f, -0.592022f, 0.258322f, 0.885934f, -0.385216f, 0.375000f, 0.625000f, - 0.505667f, 0.496143f, -0.505667f, 0.327636f, 0.886176f, -0.327637f, 0.500000f, 0.625000f, - 0.407593f, 0.486914f, -0.602332f, 0.383998f, 0.724322f, -0.572629f, 0.375000f, 0.750000f, - 0.147639f, 0.486914f, -0.710117f, 0.135410f, 0.723373f, -0.677049f, 0.125000f, 0.750000f, - 0.000000f, 0.471533f, -0.737598f, 0.000000f, 0.572589f, -0.819842f, 0.000000f, 0.875000f, - 0.150286f, 0.471533f, -0.722846f, 0.160782f, 0.572609f, -0.803908f, 0.125000f, 0.875000f, - 0.289507f, 0.471533f, -0.680434f, 0.315066f, 0.573550f, -0.756157f, 0.250000f, 0.875000f, - 0.152812f, 0.450000f, -0.735000f, 0.177064f, 0.429952f, -0.885319f, 0.125000f, 1.000000f, - 0.407593f, 0.486914f, -0.602332f, 0.383998f, 0.724322f, -0.572628f, 0.375000f, 0.750000f, - 0.289507f, 0.471533f, -0.680434f, 0.315065f, 0.573550f, -0.756158f, 0.250000f, 0.875000f, - 0.414899f, 0.471533f, -0.613128f, 0.456193f, 0.573668f, -0.680288f, 0.375000f, 0.875000f, - 0.523694f, 0.471533f, -0.523694f, 0.578938f, 0.574162f, -0.578938f, 0.500000f, 0.875000f, - 0.421875f, 0.450000f, -0.623438f, 0.502589f, 0.430918f, -0.749476f, 0.375000f, 1.000000f, - 0.647191f, 0.499219f, -0.275363f, -0.000000f, 1.000000f, 0.000000f, 0.750000f, 0.500000f, - 0.514473f, 0.486914f, -0.514473f, 0.487196f, 0.724762f, -0.487196f, 0.500000f, 0.750000f, - 0.668452f, 0.486914f, -0.284409f, 0.637875f, 0.722825f, -0.265781f, 0.750000f, 0.750000f, - 0.724609f, 0.486914f, -0.000000f, 0.690476f, 0.723356f, -0.000000f, 1.000000f, 0.750000f, - 0.691875f, 0.450000f, -0.294375f, 0.833647f, 0.429394f, -0.347353f, 0.750000f, 1.000000f, - 0.583174f, 0.499219f, -0.394629f, -0.000000f, 1.000000f, 0.000000f, 0.625000f, 0.500000f, - 0.505667f, 0.496143f, -0.505667f, 0.327637f, 0.886176f, -0.327636f, 0.500000f, 0.625000f, - 0.592022f, 0.496143f, -0.400616f, 0.385231f, 0.885924f, -0.258332f, 0.625000f, 0.625000f, - 0.657011f, 0.496143f, -0.279541f, 0.428239f, 0.885874f, -0.178433f, 0.750000f, 0.625000f, - 0.602332f, 0.486914f, -0.407593f, 0.572644f, 0.724305f, -0.384008f, 0.625000f, 0.750000f, - 0.687531f, 0.499219f, -0.142943f, -0.000000f, 1.000000f, 0.000000f, 0.875000f, 0.500000f, - 0.657011f, 0.496143f, -0.279541f, 0.428239f, 0.885874f, -0.178433f, 0.750000f, 0.625000f, - 0.697963f, 0.496143f, -0.145112f, 0.455839f, 0.885381f, -0.091168f, 0.875000f, 0.625000f, - 0.712207f, 0.496143f, -0.000000f, 0.464835f, 0.885397f, -0.000000f, 1.000000f, 0.625000f, - 0.710117f, 0.486914f, -0.147639f, 0.677099f, 0.723325f, -0.135420f, 0.875000f, 0.750000f, - 0.602332f, 0.486914f, -0.407593f, 0.572643f, 0.724305f, -0.384008f, 0.625000f, 0.750000f, - 0.523694f, 0.471533f, -0.523694f, 0.578938f, 0.574162f, -0.578938f, 0.500000f, 0.875000f, - 0.613128f, 0.471533f, -0.414899f, 0.680299f, 0.573650f, -0.456201f, 0.625000f, 0.875000f, - 0.680434f, 0.471533f, -0.289507f, 0.756158f, 0.573550f, -0.315065f, 0.750000f, 0.875000f, - 0.623438f, 0.450000f, -0.421875f, 0.749482f, 0.430901f, -0.502594f, 0.625000f, 1.000000f, - 0.710117f, 0.486914f, -0.147639f, 0.677099f, 0.723325f, -0.135420f, 0.875000f, 0.750000f, - 0.680434f, 0.471533f, -0.289507f, 0.756157f, 0.573550f, -0.315066f, 0.750000f, 0.875000f, - 0.722846f, 0.471533f, -0.150286f, 0.803945f, 0.572555f, -0.160789f, 0.875000f, 0.875000f, - 0.737598f, 0.471533f, -0.000000f, 0.819842f, 0.572589f, -0.000000f, 1.000000f, 0.875000f, - 0.735000f, 0.450000f, -0.152812f, 0.885342f, 0.429904f, -0.177068f, 0.875000f, 1.000000f, - 0.750000f, 0.450000f, -0.000000f, 0.902861f, 0.429934f, -0.000000f, 0.000000f, 0.000000f, - 0.000000f, 0.450000f, 0.750000f, 0.000000f, 0.429934f, 0.902861f, 1.000000f, 0.000000f, - 1.000000f, -0.300000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, -0.300000f, 1.000000f, 0.000000f, 0.000000f, 1.000000f, 1.000000f, 1.000000f, - 0.532500f, 0.450000f, 0.532500f, 0.639602f, 0.426401f, 0.639602f, 0.500000f, 0.000000f, - 0.921875f, 0.060938f, -0.000000f, 0.937749f, 0.347314f, -0.000000f, 0.000000f, 0.500000f, - 0.654531f, 0.060938f, 0.654531f, 0.663890f, 0.344239f, 0.663890f, 0.500000f, 0.500000f, - 0.000000f, 0.060938f, 0.921875f, 0.000000f, 0.347314f, 0.937749f, 1.000000f, 0.500000f, - 0.710000f, -0.300000f, 0.710000f, 0.707107f, 0.000000f, 0.707107f, 0.500000f, 1.000000f, - 0.691875f, 0.450000f, 0.294375f, 0.833528f, 0.429664f, 0.347303f, 0.250000f, 0.000000f, - 0.841797f, 0.253711f, -0.000000f, 0.911768f, 0.410706f, -0.000000f, 0.000000f, 0.250000f, - 0.776558f, 0.253711f, 0.330405f, 0.841741f, 0.410444f, 0.350725f, 0.250000f, 0.250000f, - 0.597676f, 0.253711f, 0.597676f, 0.644272f, 0.412102f, 0.644272f, 0.500000f, 0.250000f, - 0.850430f, 0.060938f, 0.361836f, 0.865695f, 0.347079f, 0.360706f, 0.250000f, 0.500000f, - 0.735000f, 0.450000f, 0.152812f, 0.885319f, 0.429952f, 0.177064f, 0.125000f, 0.000000f, - 0.796631f, 0.351636f, -0.000000f, 0.905094f, 0.425212f, -0.000000f, 0.000000f, 0.125000f, - 0.780698f, 0.351636f, 0.162314f, 0.887509f, 0.425230f, 0.177502f, 0.125000f, 0.125000f, - 0.734892f, 0.351636f, 0.312678f, 0.835093f, 0.426082f, 0.347956f, 0.250000f, 0.125000f, - 0.824961f, 0.253711f, 0.171516f, 0.894054f, 0.410724f, 0.178811f, 0.125000f, 0.250000f, - 0.623438f, 0.450000f, 0.421875f, 0.749476f, 0.430917f, 0.502590f, 0.375000f, 0.000000f, - 0.734892f, 0.351636f, 0.312678f, 0.835093f, 0.426082f, 0.347956f, 0.250000f, 0.125000f, - 0.662199f, 0.351636f, 0.448105f, 0.751338f, 0.426189f, 0.503839f, 0.375000f, 0.125000f, - 0.565608f, 0.351636f, 0.565608f, 0.639524f, 0.426636f, 0.639524f, 0.500000f, 0.125000f, - 0.699744f, 0.253711f, 0.473511f, 0.756904f, 0.411664f, 0.507571f, 0.375000f, 0.250000f, - 0.824961f, 0.253711f, 0.171516f, 0.894054f, 0.410724f, 0.178811f, 0.125000f, 0.250000f, - 0.884033f, 0.156665f, -0.000000f, 0.922766f, 0.385361f, -0.000000f, 0.000000f, 0.375000f, - 0.866353f, 0.156665f, 0.180122f, 0.904839f, 0.385379f, 0.180968f, 0.125000f, 0.375000f, - 0.815521f, 0.156665f, 0.346983f, 0.851467f, 0.386182f, 0.354778f, 0.250000f, 0.375000f, - 0.903437f, 0.060938f, 0.187832f, 0.919533f, 0.347330f, 0.183906f, 0.125000f, 0.500000f, - 0.699744f, 0.253711f, 0.473511f, 0.756904f, 0.411665f, 0.507571f, 0.375000f, 0.250000f, - 0.815521f, 0.156665f, 0.346983f, 0.851467f, 0.386182f, 0.354778f, 0.250000f, 0.375000f, - 0.734853f, 0.156665f, 0.497269f, 0.766078f, 0.386283f, 0.513723f, 0.375000f, 0.375000f, - 0.627664f, 0.156665f, 0.627664f, 0.652097f, 0.386703f, 0.652097f, 0.500000f, 0.375000f, - 0.766309f, 0.060938f, 0.518555f, 0.778577f, 0.348172f, 0.522105f, 0.375000f, 0.500000f, - 0.294375f, 0.450000f, 0.691875f, 0.347353f, 0.429394f, 0.833647f, 0.750000f, 0.000000f, - 0.597676f, 0.253711f, 0.597676f, 0.644272f, 0.412102f, 0.644272f, 0.500000f, 0.250000f, - 0.330405f, 0.253711f, 0.776558f, 0.350771f, 0.410181f, 0.841850f, 0.750000f, 0.250000f, - 0.000000f, 0.253711f, 0.841797f, 0.000000f, 0.410706f, 0.911768f, 1.000000f, 0.250000f, - 0.361836f, 0.060938f, 0.850430f, 0.360739f, 0.346844f, 0.865775f, 0.750000f, 0.500000f, - 0.421875f, 0.450000f, 0.623438f, 0.502594f, 0.430900f, 0.749483f, 0.625000f, 0.000000f, - 0.565608f, 0.351636f, 0.565608f, 0.639524f, 0.426636f, 0.639524f, 0.500000f, 0.125000f, - 0.448105f, 0.351636f, 0.662199f, 0.503843f, 0.426172f, 0.751345f, 0.625000f, 0.125000f, - 0.312678f, 0.351636f, 0.734892f, 0.347956f, 0.426082f, 0.835093f, 0.750000f, 0.125000f, - 0.473511f, 0.253711f, 0.699744f, 0.507575f, 0.411648f, 0.756911f, 0.625000f, 0.250000f, - 0.152812f, 0.450000f, 0.735000f, 0.177068f, 0.429903f, 0.885342f, 0.875000f, 0.000000f, - 0.312678f, 0.351636f, 0.734892f, 0.347956f, 0.426082f, 0.835093f, 0.750000f, 0.125000f, - 0.162314f, 0.351636f, 0.780698f, 0.177506f, 0.425181f, 0.887532f, 0.875000f, 0.125000f, - 0.000000f, 0.351636f, 0.796631f, 0.000000f, 0.425212f, 0.905094f, 1.000000f, 0.125000f, - 0.171516f, 0.253711f, 0.824961f, 0.178815f, 0.410676f, 0.894075f, 0.875000f, 0.250000f, - 0.473511f, 0.253711f, 0.699744f, 0.507575f, 0.411648f, 0.756910f, 0.625000f, 0.250000f, - 0.627664f, 0.156665f, 0.627664f, 0.652097f, 0.386703f, 0.652097f, 0.500000f, 0.375000f, - 0.497269f, 0.156665f, 0.734853f, 0.513726f, 0.386267f, 0.766083f, 0.625000f, 0.375000f, - 0.346983f, 0.156665f, 0.815521f, 0.354778f, 0.386182f, 0.851467f, 0.750000f, 0.375000f, - 0.518555f, 0.060938f, 0.766309f, 0.522108f, 0.348157f, 0.778582f, 0.625000f, 0.500000f, - 0.171516f, 0.253711f, 0.824961f, 0.178815f, 0.410676f, 0.894075f, 0.875000f, 0.250000f, - 0.346983f, 0.156665f, 0.815521f, 0.354778f, 0.386182f, 0.851467f, 0.750000f, 0.375000f, - 0.180122f, 0.156665f, 0.866353f, 0.180972f, 0.385333f, 0.904858f, 0.875000f, 0.375000f, - 0.000000f, 0.156665f, 0.884033f, 0.000000f, 0.385361f, 0.922766f, 1.000000f, 0.375000f, - 0.187832f, 0.060938f, 0.903437f, 0.183909f, 0.347288f, 0.919548f, 0.875000f, 0.500000f, - 0.850430f, 0.060938f, 0.361836f, 0.865695f, 0.347079f, 0.360706f, 0.250000f, 0.500000f, - 0.978516f, -0.124805f, -0.000000f, 0.975288f, 0.220939f, -0.000000f, 0.000000f, 0.750000f, - 0.902681f, -0.124805f, 0.384067f, 0.900299f, 0.220777f, 0.375125f, 0.250000f, 0.750000f, - 0.694746f, -0.124805f, 0.694746f, 0.689494f, 0.221799f, 0.689495f, 0.500000f, 0.750000f, - 0.922500f, -0.300000f, 0.392500f, 0.923077f, 0.000000f, 0.384615f, 0.250000f, 1.000000f, - 0.903437f, 0.060938f, 0.187832f, 0.919533f, 0.347330f, 0.183906f, 0.125000f, 0.500000f, - 0.953857f, -0.033032f, -0.000000f, 0.955877f, 0.293768f, -0.000000f, 0.000000f, 0.625000f, - 0.934780f, -0.033032f, 0.194348f, 0.937310f, 0.293782f, 0.187462f, 0.125000f, 0.625000f, - 0.879933f, -0.033032f, 0.374389f, 0.882157f, 0.294439f, 0.367565f, 0.250000f, 0.625000f, - 0.958945f, -0.124805f, 0.199373f, 0.956346f, 0.220950f, 0.191269f, 0.125000f, 0.750000f, - 0.766309f, 0.060938f, 0.518555f, 0.778578f, 0.348172f, 0.522105f, 0.375000f, 0.500000f, - 0.879933f, -0.033032f, 0.374389f, 0.882157f, 0.294439f, 0.367565f, 0.250000f, 0.625000f, - 0.792894f, -0.033032f, 0.536545f, 0.793705f, 0.294522f, 0.532249f, 0.375000f, 0.625000f, - 0.677239f, -0.033032f, 0.677239f, 0.675668f, 0.294866f, 0.675668f, 0.500000f, 0.625000f, - 0.813391f, -0.124805f, 0.550415f, 0.809908f, 0.221529f, 0.543115f, 0.375000f, 0.750000f, - 0.958945f, -0.124805f, 0.199373f, 0.956346f, 0.220950f, 0.191269f, 0.125000f, 0.750000f, - 0.994385f, -0.213940f, -0.000000f, 0.992240f, 0.124341f, -0.000000f, 0.000000f, 0.875000f, - 0.974497f, -0.213940f, 0.202606f, 0.972970f, 0.124347f, 0.194594f, 0.125000f, 0.875000f, - 0.917320f, -0.213940f, 0.390296f, 0.915878f, 0.124647f, 0.381616f, 0.250000f, 0.875000f, - 0.980000f, -0.300000f, 0.203750f, 0.980581f, 0.000000f, 0.196116f, 0.125000f, 1.000000f, - 0.813391f, -0.124805f, 0.550415f, 0.809908f, 0.221529f, 0.543115f, 0.375000f, 0.750000f, - 0.917320f, -0.213940f, 0.390296f, 0.915878f, 0.124647f, 0.381616f, 0.250000f, 0.875000f, - 0.826582f, -0.213940f, 0.559341f, 0.824063f, 0.124685f, 0.552607f, 0.375000f, 0.875000f, - 0.706013f, -0.213940f, 0.706013f, 0.701575f, 0.124842f, 0.701575f, 0.500000f, 0.875000f, - 0.831250f, -0.300000f, 0.562500f, 0.830544f, 0.000000f, 0.556953f, 0.375000f, 1.000000f, - 0.361836f, 0.060938f, 0.850430f, 0.360740f, 0.346844f, 0.865775f, 0.750000f, 0.500000f, - 0.694746f, -0.124805f, 0.694746f, 0.689495f, 0.221799f, 0.689494f, 0.500000f, 0.750000f, - 0.384067f, -0.124805f, 0.902681f, 0.375139f, 0.220616f, 0.900333f, 0.750000f, 0.750000f, - 0.000000f, -0.124805f, 0.978516f, 0.000000f, 0.220939f, 0.975288f, 1.000000f, 0.750000f, - 0.392500f, -0.300000f, 0.922500f, 0.384615f, 0.000000f, 0.923077f, 0.750000f, 1.000000f, - 0.518555f, 0.060938f, 0.766309f, 0.522108f, 0.348157f, 0.778582f, 0.625000f, 0.500000f, - 0.677239f, -0.033032f, 0.677239f, 0.675668f, 0.294866f, 0.675668f, 0.500000f, 0.625000f, - 0.536545f, -0.033032f, 0.792894f, 0.532252f, 0.294509f, 0.793708f, 0.625000f, 0.625000f, - 0.374389f, -0.033032f, 0.879933f, 0.367565f, 0.294439f, 0.882157f, 0.750000f, 0.625000f, - 0.550415f, -0.124805f, 0.813391f, 0.543116f, 0.221518f, 0.809910f, 0.625000f, 0.750000f, - 0.187832f, 0.060938f, 0.903437f, 0.183910f, 0.347287f, 0.919548f, 0.875000f, 0.500000f, - 0.374389f, -0.033032f, 0.879933f, 0.367565f, 0.294439f, 0.882157f, 0.750000f, 0.625000f, - 0.194348f, -0.033032f, 0.934780f, 0.187464f, 0.293744f, 0.937321f, 0.875000f, 0.625000f, - 0.000000f, -0.033032f, 0.953857f, 0.000000f, 0.293768f, 0.955877f, 1.000000f, 0.625000f, - 0.199373f, -0.124805f, 0.958945f, 0.191271f, 0.220920f, 0.956352f, 0.875000f, 0.750000f, - 0.550415f, -0.124805f, 0.813391f, 0.543116f, 0.221518f, 0.809910f, 0.625000f, 0.750000f, - 0.706013f, -0.213940f, 0.706013f, 0.701575f, 0.124842f, 0.701575f, 0.500000f, 0.875000f, - 0.559341f, -0.213940f, 0.826582f, 0.552607f, 0.124679f, 0.824063f, 0.625000f, 0.875000f, - 0.390296f, -0.213940f, 0.917320f, 0.381616f, 0.124647f, 0.915878f, 0.750000f, 0.875000f, - 0.562500f, -0.300000f, 0.831250f, 0.556953f, 0.000000f, 0.830544f, 0.625000f, 1.000000f, - 0.199373f, -0.124805f, 0.958945f, 0.191271f, 0.220920f, 0.956352f, 0.875000f, 0.750000f, - 0.390296f, -0.213940f, 0.917320f, 0.381616f, 0.124647f, 0.915878f, 0.750000f, 0.875000f, - 0.202606f, -0.213940f, 0.974497f, 0.194595f, 0.124330f, 0.972972f, 0.875000f, 0.875000f, - 0.000000f, -0.213940f, 0.994385f, 0.000000f, 0.124341f, 0.992240f, 1.000000f, 0.875000f, - 0.203750f, -0.300000f, 0.980000f, 0.196116f, 0.000000f, 0.980581f, 0.875000f, 1.000000f, - 0.000000f, 0.450000f, 0.750000f, 0.000000f, 0.429934f, 0.902861f, 0.000000f, 0.000000f, - -0.750000f, 0.450000f, -0.000000f, -0.902861f, 0.429934f, 0.000000f, 1.000000f, 0.000000f, - 0.000000f, -0.300000f, 1.000000f, 0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, - -1.000000f, -0.300000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 1.000000f, 1.000000f, - -0.532500f, 0.450000f, 0.532500f, -0.639602f, 0.426401f, 0.639602f, 0.500000f, 0.000000f, - 0.000000f, 0.060938f, 0.921875f, 0.000000f, 0.347314f, 0.937749f, 0.000000f, 0.500000f, - -0.654531f, 0.060938f, 0.654531f, -0.663890f, 0.344239f, 0.663890f, 0.500000f, 0.500000f, - -0.921875f, 0.060938f, -0.000000f, -0.937749f, 0.347314f, 0.000000f, 1.000000f, 0.500000f, - -0.710000f, -0.300000f, 0.710000f, -0.707107f, 0.000000f, 0.707107f, 0.500000f, 1.000000f, - -0.294375f, 0.450000f, 0.691875f, -0.347303f, 0.429664f, 0.833528f, 0.250000f, 0.000000f, - 0.000000f, 0.253711f, 0.841797f, 0.000000f, 0.410706f, 0.911768f, 0.000000f, 0.250000f, - -0.330405f, 0.253711f, 0.776558f, -0.350725f, 0.410444f, 0.841741f, 0.250000f, 0.250000f, - -0.597676f, 0.253711f, 0.597676f, -0.644272f, 0.412102f, 0.644272f, 0.500000f, 0.250000f, - -0.361836f, 0.060938f, 0.850430f, -0.360706f, 0.347079f, 0.865695f, 0.250000f, 0.500000f, - -0.152812f, 0.450000f, 0.735000f, -0.177064f, 0.429952f, 0.885319f, 0.125000f, 0.000000f, - 0.000000f, 0.351636f, 0.796631f, 0.000000f, 0.425212f, 0.905094f, 0.000000f, 0.125000f, - -0.162314f, 0.351636f, 0.780698f, -0.177502f, 0.425230f, 0.887509f, 0.125000f, 0.125000f, - -0.312678f, 0.351636f, 0.734892f, -0.347956f, 0.426082f, 0.835093f, 0.250000f, 0.125000f, - -0.171516f, 0.253711f, 0.824961f, -0.178811f, 0.410724f, 0.894054f, 0.125000f, 0.250000f, - -0.421875f, 0.450000f, 0.623438f, -0.502590f, 0.430917f, 0.749476f, 0.375000f, 0.000000f, - -0.312678f, 0.351636f, 0.734892f, -0.347956f, 0.426082f, 0.835093f, 0.250000f, 0.125000f, - -0.448105f, 0.351636f, 0.662199f, -0.503839f, 0.426189f, 0.751338f, 0.375000f, 0.125000f, - -0.565608f, 0.351636f, 0.565608f, -0.639524f, 0.426636f, 0.639524f, 0.500000f, 0.125000f, - -0.473511f, 0.253711f, 0.699744f, -0.507571f, 0.411664f, 0.756904f, 0.375000f, 0.250000f, - -0.171516f, 0.253711f, 0.824961f, -0.178811f, 0.410724f, 0.894054f, 0.125000f, 0.250000f, - 0.000000f, 0.156665f, 0.884033f, 0.000000f, 0.385361f, 0.922766f, 0.000000f, 0.375000f, - -0.180122f, 0.156665f, 0.866353f, -0.180968f, 0.385379f, 0.904839f, 0.125000f, 0.375000f, - -0.346983f, 0.156665f, 0.815521f, -0.354778f, 0.386182f, 0.851467f, 0.250000f, 0.375000f, - -0.187832f, 0.060938f, 0.903437f, -0.183906f, 0.347330f, 0.919533f, 0.125000f, 0.500000f, - -0.473511f, 0.253711f, 0.699744f, -0.507571f, 0.411665f, 0.756904f, 0.375000f, 0.250000f, - -0.346983f, 0.156665f, 0.815521f, -0.354778f, 0.386182f, 0.851467f, 0.250000f, 0.375000f, - -0.497269f, 0.156665f, 0.734853f, -0.513723f, 0.386283f, 0.766078f, 0.375000f, 0.375000f, - -0.627664f, 0.156665f, 0.627664f, -0.652097f, 0.386703f, 0.652097f, 0.500000f, 0.375000f, - -0.518555f, 0.060938f, 0.766309f, -0.522105f, 0.348172f, 0.778577f, 0.375000f, 0.500000f, - -0.691875f, 0.450000f, 0.294375f, -0.833647f, 0.429394f, 0.347353f, 0.750000f, 0.000000f, - -0.597676f, 0.253711f, 0.597676f, -0.644272f, 0.412102f, 0.644272f, 0.500000f, 0.250000f, - -0.776558f, 0.253711f, 0.330405f, -0.841850f, 0.410181f, 0.350771f, 0.750000f, 0.250000f, - -0.841797f, 0.253711f, -0.000000f, -0.911768f, 0.410706f, 0.000000f, 1.000000f, 0.250000f, - -0.850430f, 0.060938f, 0.361836f, -0.865775f, 0.346844f, 0.360739f, 0.750000f, 0.500000f, - -0.623438f, 0.450000f, 0.421875f, -0.749483f, 0.430900f, 0.502594f, 0.625000f, 0.000000f, - -0.565608f, 0.351636f, 0.565608f, -0.639524f, 0.426636f, 0.639524f, 0.500000f, 0.125000f, - -0.662199f, 0.351636f, 0.448105f, -0.751345f, 0.426172f, 0.503843f, 0.625000f, 0.125000f, - -0.734892f, 0.351636f, 0.312678f, -0.835093f, 0.426082f, 0.347956f, 0.750000f, 0.125000f, - -0.699744f, 0.253711f, 0.473511f, -0.756911f, 0.411648f, 0.507575f, 0.625000f, 0.250000f, - -0.735000f, 0.450000f, 0.152812f, -0.885342f, 0.429903f, 0.177068f, 0.875000f, 0.000000f, - -0.734892f, 0.351636f, 0.312678f, -0.835093f, 0.426082f, 0.347956f, 0.750000f, 0.125000f, - -0.780698f, 0.351636f, 0.162314f, -0.887532f, 0.425181f, 0.177506f, 0.875000f, 0.125000f, - -0.796631f, 0.351636f, -0.000000f, -0.905094f, 0.425212f, 0.000000f, 1.000000f, 0.125000f, - -0.824961f, 0.253711f, 0.171516f, -0.894075f, 0.410676f, 0.178815f, 0.875000f, 0.250000f, - -0.699744f, 0.253711f, 0.473511f, -0.756910f, 0.411648f, 0.507575f, 0.625000f, 0.250000f, - -0.627664f, 0.156665f, 0.627664f, -0.652097f, 0.386703f, 0.652097f, 0.500000f, 0.375000f, - -0.734853f, 0.156665f, 0.497269f, -0.766083f, 0.386267f, 0.513726f, 0.625000f, 0.375000f, - -0.815521f, 0.156665f, 0.346983f, -0.851467f, 0.386182f, 0.354778f, 0.750000f, 0.375000f, - -0.766309f, 0.060938f, 0.518555f, -0.778582f, 0.348157f, 0.522108f, 0.625000f, 0.500000f, - -0.824961f, 0.253711f, 0.171516f, -0.894075f, 0.410676f, 0.178815f, 0.875000f, 0.250000f, - -0.815521f, 0.156665f, 0.346983f, -0.851467f, 0.386182f, 0.354778f, 0.750000f, 0.375000f, - -0.866353f, 0.156665f, 0.180122f, -0.904858f, 0.385333f, 0.180972f, 0.875000f, 0.375000f, - -0.884033f, 0.156665f, -0.000000f, -0.922766f, 0.385361f, 0.000000f, 1.000000f, 0.375000f, - -0.903437f, 0.060938f, 0.187832f, -0.919548f, 0.347288f, 0.183909f, 0.875000f, 0.500000f, - -0.361836f, 0.060938f, 0.850430f, -0.360706f, 0.347079f, 0.865695f, 0.250000f, 0.500000f, - 0.000000f, -0.124805f, 0.978516f, 0.000000f, 0.220939f, 0.975288f, 0.000000f, 0.750000f, - -0.384067f, -0.124805f, 0.902681f, -0.375125f, 0.220777f, 0.900299f, 0.250000f, 0.750000f, - -0.694746f, -0.124805f, 0.694746f, -0.689495f, 0.221799f, 0.689494f, 0.500000f, 0.750000f, - -0.392500f, -0.300000f, 0.922500f, -0.384615f, 0.000000f, 0.923077f, 0.250000f, 1.000000f, - -0.187832f, 0.060938f, 0.903437f, -0.183906f, 0.347330f, 0.919533f, 0.125000f, 0.500000f, - 0.000000f, -0.033032f, 0.953857f, 0.000000f, 0.293768f, 0.955877f, 0.000000f, 0.625000f, - -0.194348f, -0.033032f, 0.934780f, -0.187462f, 0.293782f, 0.937310f, 0.125000f, 0.625000f, - -0.374389f, -0.033032f, 0.879933f, -0.367565f, 0.294439f, 0.882157f, 0.250000f, 0.625000f, - -0.199373f, -0.124805f, 0.958945f, -0.191269f, 0.220950f, 0.956346f, 0.125000f, 0.750000f, - -0.518555f, 0.060938f, 0.766309f, -0.522105f, 0.348172f, 0.778578f, 0.375000f, 0.500000f, - -0.374389f, -0.033032f, 0.879933f, -0.367565f, 0.294439f, 0.882157f, 0.250000f, 0.625000f, - -0.536545f, -0.033032f, 0.792894f, -0.532249f, 0.294522f, 0.793705f, 0.375000f, 0.625000f, - -0.677239f, -0.033032f, 0.677239f, -0.675668f, 0.294866f, 0.675668f, 0.500000f, 0.625000f, - -0.550415f, -0.124805f, 0.813391f, -0.543115f, 0.221529f, 0.809908f, 0.375000f, 0.750000f, - -0.199373f, -0.124805f, 0.958945f, -0.191269f, 0.220950f, 0.956346f, 0.125000f, 0.750000f, - 0.000000f, -0.213940f, 0.994385f, 0.000000f, 0.124341f, 0.992240f, 0.000000f, 0.875000f, - -0.202606f, -0.213940f, 0.974497f, -0.194594f, 0.124347f, 0.972970f, 0.125000f, 0.875000f, - -0.390296f, -0.213940f, 0.917320f, -0.381616f, 0.124647f, 0.915878f, 0.250000f, 0.875000f, - -0.203750f, -0.300000f, 0.980000f, -0.196116f, 0.000000f, 0.980581f, 0.125000f, 1.000000f, - -0.550415f, -0.124805f, 0.813391f, -0.543115f, 0.221529f, 0.809908f, 0.375000f, 0.750000f, - -0.390296f, -0.213940f, 0.917320f, -0.381616f, 0.124647f, 0.915878f, 0.250000f, 0.875000f, - -0.559341f, -0.213940f, 0.826582f, -0.552607f, 0.124685f, 0.824063f, 0.375000f, 0.875000f, - -0.706013f, -0.213940f, 0.706013f, -0.701575f, 0.124842f, 0.701575f, 0.500000f, 0.875000f, - -0.562500f, -0.300000f, 0.831250f, -0.556953f, 0.000000f, 0.830544f, 0.375000f, 1.000000f, - -0.850430f, 0.060938f, 0.361836f, -0.865775f, 0.346844f, 0.360740f, 0.750000f, 0.500000f, - -0.694746f, -0.124805f, 0.694746f, -0.689494f, 0.221799f, 0.689495f, 0.500000f, 0.750000f, - -0.902681f, -0.124805f, 0.384067f, -0.900333f, 0.220616f, 0.375139f, 0.750000f, 0.750000f, - -0.978516f, -0.124805f, -0.000000f, -0.975288f, 0.220939f, 0.000000f, 1.000000f, 0.750000f, - -0.922500f, -0.300000f, 0.392500f, -0.923077f, 0.000000f, 0.384615f, 0.750000f, 1.000000f, - -0.766309f, 0.060938f, 0.518555f, -0.778582f, 0.348157f, 0.522108f, 0.625000f, 0.500000f, - -0.677239f, -0.033032f, 0.677239f, -0.675668f, 0.294866f, 0.675668f, 0.500000f, 0.625000f, - -0.792894f, -0.033032f, 0.536545f, -0.793708f, 0.294509f, 0.532252f, 0.625000f, 0.625000f, - -0.879933f, -0.033032f, 0.374389f, -0.882157f, 0.294439f, 0.367565f, 0.750000f, 0.625000f, - -0.813391f, -0.124805f, 0.550415f, -0.809910f, 0.221518f, 0.543116f, 0.625000f, 0.750000f, - -0.903437f, 0.060938f, 0.187832f, -0.919548f, 0.347287f, 0.183910f, 0.875000f, 0.500000f, - -0.879933f, -0.033032f, 0.374389f, -0.882157f, 0.294439f, 0.367565f, 0.750000f, 0.625000f, - -0.934780f, -0.033032f, 0.194348f, -0.937321f, 0.293744f, 0.187464f, 0.875000f, 0.625000f, - -0.953857f, -0.033032f, -0.000000f, -0.955877f, 0.293768f, 0.000000f, 1.000000f, 0.625000f, - -0.958945f, -0.124805f, 0.199373f, -0.956352f, 0.220920f, 0.191271f, 0.875000f, 0.750000f, - -0.813391f, -0.124805f, 0.550415f, -0.809910f, 0.221518f, 0.543116f, 0.625000f, 0.750000f, - -0.706013f, -0.213940f, 0.706013f, -0.701575f, 0.124842f, 0.701575f, 0.500000f, 0.875000f, - -0.826582f, -0.213940f, 0.559341f, -0.824063f, 0.124679f, 0.552607f, 0.625000f, 0.875000f, - -0.917320f, -0.213940f, 0.390296f, -0.915878f, 0.124647f, 0.381616f, 0.750000f, 0.875000f, - -0.831250f, -0.300000f, 0.562500f, -0.830544f, 0.000000f, 0.556953f, 0.625000f, 1.000000f, - -0.958945f, -0.124805f, 0.199373f, -0.956352f, 0.220920f, 0.191271f, 0.875000f, 0.750000f, - -0.917320f, -0.213940f, 0.390296f, -0.915878f, 0.124647f, 0.381616f, 0.750000f, 0.875000f, - -0.974497f, -0.213940f, 0.202606f, -0.972972f, 0.124330f, 0.194595f, 0.875000f, 0.875000f, - -0.994385f, -0.213940f, -0.000000f, -0.992240f, 0.124341f, 0.000000f, 1.000000f, 0.875000f, - -0.980000f, -0.300000f, 0.203750f, -0.980581f, 0.000000f, 0.196116f, 0.875000f, 1.000000f, - -0.750000f, 0.450000f, -0.000000f, -0.902861f, 0.429934f, 0.000000f, 0.000000f, 0.000000f, - 0.000000f, 0.450000f, -0.750000f, 0.000000f, 0.429934f, -0.902861f, 1.000000f, 0.000000f, - -1.000000f, -0.300000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, -0.300000f, -1.000000f, 0.000000f, 0.000000f, -1.000000f, 1.000000f, 1.000000f, - -0.532500f, 0.450000f, -0.532500f, -0.639602f, 0.426401f, -0.639602f, 0.500000f, 0.000000f, - -0.921875f, 0.060938f, -0.000000f, -0.937749f, 0.347314f, 0.000000f, 0.000000f, 0.500000f, - -0.654531f, 0.060938f, -0.654531f, -0.663890f, 0.344239f, -0.663890f, 0.500000f, 0.500000f, - 0.000000f, 0.060938f, -0.921875f, 0.000000f, 0.347314f, -0.937749f, 1.000000f, 0.500000f, - -0.710000f, -0.300000f, -0.710000f, -0.707107f, -0.000000f, -0.707107f, 0.500000f, 1.000000f, - -0.691875f, 0.450000f, -0.294375f, -0.833528f, 0.429664f, -0.347303f, 0.250000f, 0.000000f, - -0.841797f, 0.253711f, -0.000000f, -0.911768f, 0.410706f, 0.000000f, 0.000000f, 0.250000f, - -0.776558f, 0.253711f, -0.330405f, -0.841741f, 0.410444f, -0.350725f, 0.250000f, 0.250000f, - -0.597676f, 0.253711f, -0.597676f, -0.644272f, 0.412102f, -0.644272f, 0.500000f, 0.250000f, - -0.850430f, 0.060938f, -0.361836f, -0.865695f, 0.347079f, -0.360706f, 0.250000f, 0.500000f, - -0.735000f, 0.450000f, -0.152812f, -0.885319f, 0.429952f, -0.177064f, 0.125000f, 0.000000f, - -0.796631f, 0.351636f, -0.000000f, -0.905094f, 0.425212f, 0.000000f, 0.000000f, 0.125000f, - -0.780698f, 0.351636f, -0.162314f, -0.887509f, 0.425230f, -0.177502f, 0.125000f, 0.125000f, - -0.734892f, 0.351636f, -0.312678f, -0.835093f, 0.426082f, -0.347956f, 0.250000f, 0.125000f, - -0.824961f, 0.253711f, -0.171516f, -0.894054f, 0.410724f, -0.178811f, 0.125000f, 0.250000f, - -0.623438f, 0.450000f, -0.421875f, -0.749476f, 0.430917f, -0.502590f, 0.375000f, 0.000000f, - -0.734892f, 0.351636f, -0.312678f, -0.835093f, 0.426082f, -0.347956f, 0.250000f, 0.125000f, - -0.662199f, 0.351636f, -0.448105f, -0.751338f, 0.426189f, -0.503839f, 0.375000f, 0.125000f, - -0.565608f, 0.351636f, -0.565608f, -0.639524f, 0.426636f, -0.639524f, 0.500000f, 0.125000f, - -0.699744f, 0.253711f, -0.473511f, -0.756904f, 0.411664f, -0.507571f, 0.375000f, 0.250000f, - -0.824961f, 0.253711f, -0.171516f, -0.894054f, 0.410724f, -0.178811f, 0.125000f, 0.250000f, - -0.884033f, 0.156665f, -0.000000f, -0.922766f, 0.385361f, 0.000000f, 0.000000f, 0.375000f, - -0.866353f, 0.156665f, -0.180122f, -0.904839f, 0.385379f, -0.180968f, 0.125000f, 0.375000f, - -0.815521f, 0.156665f, -0.346983f, -0.851467f, 0.386182f, -0.354778f, 0.250000f, 0.375000f, - -0.903437f, 0.060938f, -0.187832f, -0.919533f, 0.347330f, -0.183906f, 0.125000f, 0.500000f, - -0.699744f, 0.253711f, -0.473511f, -0.756904f, 0.411665f, -0.507571f, 0.375000f, 0.250000f, - -0.815521f, 0.156665f, -0.346983f, -0.851467f, 0.386182f, -0.354778f, 0.250000f, 0.375000f, - -0.734853f, 0.156665f, -0.497269f, -0.766078f, 0.386283f, -0.513723f, 0.375000f, 0.375000f, - -0.627664f, 0.156665f, -0.627664f, -0.652097f, 0.386703f, -0.652097f, 0.500000f, 0.375000f, - -0.766309f, 0.060938f, -0.518555f, -0.778577f, 0.348172f, -0.522105f, 0.375000f, 0.500000f, - -0.294375f, 0.450000f, -0.691875f, -0.347353f, 0.429394f, -0.833647f, 0.750000f, 0.000000f, - -0.597676f, 0.253711f, -0.597676f, -0.644272f, 0.412102f, -0.644272f, 0.500000f, 0.250000f, - -0.330405f, 0.253711f, -0.776558f, -0.350771f, 0.410181f, -0.841850f, 0.750000f, 0.250000f, - 0.000000f, 0.253711f, -0.841797f, 0.000000f, 0.410706f, -0.911768f, 1.000000f, 0.250000f, - -0.361836f, 0.060938f, -0.850430f, -0.360739f, 0.346844f, -0.865775f, 0.750000f, 0.500000f, - -0.421875f, 0.450000f, -0.623438f, -0.502594f, 0.430900f, -0.749483f, 0.625000f, 0.000000f, - -0.565608f, 0.351636f, -0.565608f, -0.639524f, 0.426636f, -0.639524f, 0.500000f, 0.125000f, - -0.448105f, 0.351636f, -0.662199f, -0.503843f, 0.426172f, -0.751345f, 0.625000f, 0.125000f, - -0.312678f, 0.351636f, -0.734892f, -0.347956f, 0.426082f, -0.835093f, 0.750000f, 0.125000f, - -0.473511f, 0.253711f, -0.699744f, -0.507575f, 0.411648f, -0.756911f, 0.625000f, 0.250000f, - -0.152812f, 0.450000f, -0.735000f, -0.177068f, 0.429903f, -0.885342f, 0.875000f, 0.000000f, - -0.312678f, 0.351636f, -0.734892f, -0.347956f, 0.426082f, -0.835093f, 0.750000f, 0.125000f, - -0.162314f, 0.351636f, -0.780698f, -0.177506f, 0.425181f, -0.887532f, 0.875000f, 0.125000f, - 0.000000f, 0.351636f, -0.796631f, 0.000000f, 0.425212f, -0.905094f, 1.000000f, 0.125000f, - -0.171516f, 0.253711f, -0.824961f, -0.178815f, 0.410676f, -0.894075f, 0.875000f, 0.250000f, - -0.473511f, 0.253711f, -0.699744f, -0.507575f, 0.411648f, -0.756910f, 0.625000f, 0.250000f, - -0.627664f, 0.156665f, -0.627664f, -0.652097f, 0.386703f, -0.652097f, 0.500000f, 0.375000f, - -0.497269f, 0.156665f, -0.734853f, -0.513726f, 0.386267f, -0.766083f, 0.625000f, 0.375000f, - -0.346983f, 0.156665f, -0.815521f, -0.354778f, 0.386182f, -0.851467f, 0.750000f, 0.375000f, - -0.518555f, 0.060938f, -0.766309f, -0.522108f, 0.348157f, -0.778582f, 0.625000f, 0.500000f, - -0.171516f, 0.253711f, -0.824961f, -0.178815f, 0.410676f, -0.894075f, 0.875000f, 0.250000f, - -0.346983f, 0.156665f, -0.815521f, -0.354778f, 0.386182f, -0.851467f, 0.750000f, 0.375000f, - -0.180122f, 0.156665f, -0.866353f, -0.180972f, 0.385333f, -0.904858f, 0.875000f, 0.375000f, - 0.000000f, 0.156665f, -0.884033f, 0.000000f, 0.385361f, -0.922766f, 1.000000f, 0.375000f, - -0.187832f, 0.060938f, -0.903437f, -0.183909f, 0.347288f, -0.919548f, 0.875000f, 0.500000f, - -0.850430f, 0.060938f, -0.361836f, -0.865695f, 0.347079f, -0.360706f, 0.250000f, 0.500000f, - -0.978516f, -0.124805f, -0.000000f, -0.975288f, 0.220939f, 0.000000f, 0.000000f, 0.750000f, - -0.902681f, -0.124805f, -0.384067f, -0.900299f, 0.220777f, -0.375125f, 0.250000f, 0.750000f, - -0.694746f, -0.124805f, -0.694746f, -0.689494f, 0.221799f, -0.689495f, 0.500000f, 0.750000f, - -0.922500f, -0.300000f, -0.392500f, -0.923077f, -0.000000f, -0.384615f, 0.250000f, 1.000000f, - -0.903437f, 0.060938f, -0.187832f, -0.919533f, 0.347330f, -0.183906f, 0.125000f, 0.500000f, - -0.953857f, -0.033032f, -0.000000f, -0.955877f, 0.293768f, 0.000000f, 0.000000f, 0.625000f, - -0.934780f, -0.033032f, -0.194348f, -0.937310f, 0.293782f, -0.187462f, 0.125000f, 0.625000f, - -0.879933f, -0.033032f, -0.374389f, -0.882157f, 0.294439f, -0.367565f, 0.250000f, 0.625000f, - -0.958945f, -0.124805f, -0.199373f, -0.956346f, 0.220950f, -0.191269f, 0.125000f, 0.750000f, - -0.766309f, 0.060938f, -0.518555f, -0.778578f, 0.348172f, -0.522105f, 0.375000f, 0.500000f, - -0.879933f, -0.033032f, -0.374389f, -0.882157f, 0.294439f, -0.367565f, 0.250000f, 0.625000f, - -0.792894f, -0.033032f, -0.536545f, -0.793705f, 0.294522f, -0.532249f, 0.375000f, 0.625000f, - -0.677239f, -0.033032f, -0.677239f, -0.675668f, 0.294866f, -0.675668f, 0.500000f, 0.625000f, - -0.813391f, -0.124805f, -0.550415f, -0.809908f, 0.221529f, -0.543115f, 0.375000f, 0.750000f, - -0.958945f, -0.124805f, -0.199373f, -0.956346f, 0.220950f, -0.191269f, 0.125000f, 0.750000f, - -0.994385f, -0.213940f, -0.000000f, -0.992240f, 0.124341f, 0.000000f, 0.000000f, 0.875000f, - -0.974497f, -0.213940f, -0.202606f, -0.972970f, 0.124347f, -0.194594f, 0.125000f, 0.875000f, - -0.917320f, -0.213940f, -0.390296f, -0.915878f, 0.124647f, -0.381616f, 0.250000f, 0.875000f, - -0.980000f, -0.300000f, -0.203750f, -0.980581f, -0.000000f, -0.196116f, 0.125000f, 1.000000f, - -0.813391f, -0.124805f, -0.550415f, -0.809908f, 0.221529f, -0.543115f, 0.375000f, 0.750000f, - -0.917320f, -0.213940f, -0.390296f, -0.915878f, 0.124647f, -0.381616f, 0.250000f, 0.875000f, - -0.826582f, -0.213940f, -0.559341f, -0.824063f, 0.124685f, -0.552607f, 0.375000f, 0.875000f, - -0.706013f, -0.213940f, -0.706013f, -0.701575f, 0.124842f, -0.701575f, 0.500000f, 0.875000f, - -0.831250f, -0.300000f, -0.562500f, -0.830544f, -0.000000f, -0.556953f, 0.375000f, 1.000000f, - -0.361836f, 0.060938f, -0.850430f, -0.360740f, 0.346844f, -0.865775f, 0.750000f, 0.500000f, - -0.694746f, -0.124805f, -0.694746f, -0.689495f, 0.221799f, -0.689494f, 0.500000f, 0.750000f, - -0.384067f, -0.124805f, -0.902681f, -0.375139f, 0.220616f, -0.900333f, 0.750000f, 0.750000f, - 0.000000f, -0.124805f, -0.978516f, 0.000000f, 0.220939f, -0.975288f, 1.000000f, 0.750000f, - -0.392500f, -0.300000f, -0.922500f, -0.384615f, -0.000000f, -0.923077f, 0.750000f, 1.000000f, - -0.518555f, 0.060938f, -0.766309f, -0.522108f, 0.348157f, -0.778582f, 0.625000f, 0.500000f, - -0.677239f, -0.033032f, -0.677239f, -0.675668f, 0.294866f, -0.675668f, 0.500000f, 0.625000f, - -0.536545f, -0.033032f, -0.792894f, -0.532252f, 0.294509f, -0.793708f, 0.625000f, 0.625000f, - -0.374389f, -0.033032f, -0.879933f, -0.367565f, 0.294439f, -0.882157f, 0.750000f, 0.625000f, - -0.550415f, -0.124805f, -0.813391f, -0.543116f, 0.221518f, -0.809910f, 0.625000f, 0.750000f, - -0.187832f, 0.060938f, -0.903437f, -0.183910f, 0.347287f, -0.919548f, 0.875000f, 0.500000f, - -0.374389f, -0.033032f, -0.879933f, -0.367565f, 0.294439f, -0.882157f, 0.750000f, 0.625000f, - -0.194348f, -0.033032f, -0.934780f, -0.187464f, 0.293744f, -0.937321f, 0.875000f, 0.625000f, - 0.000000f, -0.033032f, -0.953857f, 0.000000f, 0.293768f, -0.955877f, 1.000000f, 0.625000f, - -0.199373f, -0.124805f, -0.958945f, -0.191271f, 0.220920f, -0.956352f, 0.875000f, 0.750000f, - -0.550415f, -0.124805f, -0.813391f, -0.543116f, 0.221518f, -0.809910f, 0.625000f, 0.750000f, - -0.706013f, -0.213940f, -0.706013f, -0.701575f, 0.124842f, -0.701575f, 0.500000f, 0.875000f, - -0.559341f, -0.213940f, -0.826582f, -0.552607f, 0.124679f, -0.824063f, 0.625000f, 0.875000f, - -0.390296f, -0.213940f, -0.917320f, -0.381616f, 0.124647f, -0.915878f, 0.750000f, 0.875000f, - -0.562500f, -0.300000f, -0.831250f, -0.556953f, -0.000000f, -0.830544f, 0.625000f, 1.000000f, - -0.199373f, -0.124805f, -0.958945f, -0.191271f, 0.220920f, -0.956352f, 0.875000f, 0.750000f, - -0.390296f, -0.213940f, -0.917320f, -0.381616f, 0.124647f, -0.915878f, 0.750000f, 0.875000f, - -0.202606f, -0.213940f, -0.974497f, -0.194595f, 0.124330f, -0.972972f, 0.875000f, 0.875000f, - 0.000000f, -0.213940f, -0.994385f, 0.000000f, 0.124341f, -0.992240f, 1.000000f, 0.875000f, - -0.203750f, -0.300000f, -0.980000f, -0.196116f, -0.000000f, -0.980581f, 0.875000f, 1.000000f, - 0.000000f, 0.450000f, -0.750000f, 0.000000f, 0.429934f, -0.902861f, 0.000000f, 0.000000f, - 0.750000f, 0.450000f, -0.000000f, 0.902861f, 0.429934f, -0.000000f, 1.000000f, 0.000000f, - 0.000000f, -0.300000f, -1.000000f, 0.000000f, 0.000000f, -1.000000f, 0.000000f, 1.000000f, - 1.000000f, -0.300000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 1.000000f, 1.000000f, - 0.532500f, 0.450000f, -0.532500f, 0.639602f, 0.426401f, -0.639602f, 0.500000f, 0.000000f, - 0.000000f, 0.060938f, -0.921875f, 0.000000f, 0.347314f, -0.937749f, 0.000000f, 0.500000f, - 0.654531f, 0.060938f, -0.654531f, 0.663890f, 0.344239f, -0.663890f, 0.500000f, 0.500000f, - 0.921875f, 0.060938f, -0.000000f, 0.937749f, 0.347314f, -0.000000f, 1.000000f, 0.500000f, - 0.710000f, -0.300000f, -0.710000f, 0.707107f, 0.000000f, -0.707107f, 0.500000f, 1.000000f, - 0.294375f, 0.450000f, -0.691875f, 0.347303f, 0.429664f, -0.833528f, 0.250000f, 0.000000f, - 0.000000f, 0.253711f, -0.841797f, 0.000000f, 0.410706f, -0.911768f, 0.000000f, 0.250000f, - 0.330405f, 0.253711f, -0.776558f, 0.350725f, 0.410444f, -0.841741f, 0.250000f, 0.250000f, - 0.597676f, 0.253711f, -0.597676f, 0.644272f, 0.412102f, -0.644272f, 0.500000f, 0.250000f, - 0.361836f, 0.060938f, -0.850430f, 0.360706f, 0.347079f, -0.865695f, 0.250000f, 0.500000f, - 0.152812f, 0.450000f, -0.735000f, 0.177064f, 0.429952f, -0.885319f, 0.125000f, 0.000000f, - 0.000000f, 0.351636f, -0.796631f, 0.000000f, 0.425212f, -0.905094f, 0.000000f, 0.125000f, - 0.162314f, 0.351636f, -0.780698f, 0.177502f, 0.425230f, -0.887509f, 0.125000f, 0.125000f, - 0.312678f, 0.351636f, -0.734892f, 0.347956f, 0.426082f, -0.835093f, 0.250000f, 0.125000f, - 0.171516f, 0.253711f, -0.824961f, 0.178811f, 0.410724f, -0.894054f, 0.125000f, 0.250000f, - 0.421875f, 0.450000f, -0.623438f, 0.502590f, 0.430917f, -0.749476f, 0.375000f, 0.000000f, - 0.312678f, 0.351636f, -0.734892f, 0.347956f, 0.426082f, -0.835093f, 0.250000f, 0.125000f, - 0.448105f, 0.351636f, -0.662199f, 0.503839f, 0.426189f, -0.751338f, 0.375000f, 0.125000f, - 0.565608f, 0.351636f, -0.565608f, 0.639524f, 0.426636f, -0.639524f, 0.500000f, 0.125000f, - 0.473511f, 0.253711f, -0.699744f, 0.507571f, 0.411664f, -0.756904f, 0.375000f, 0.250000f, - 0.171516f, 0.253711f, -0.824961f, 0.178811f, 0.410724f, -0.894054f, 0.125000f, 0.250000f, - 0.000000f, 0.156665f, -0.884033f, 0.000000f, 0.385361f, -0.922766f, 0.000000f, 0.375000f, - 0.180122f, 0.156665f, -0.866353f, 0.180968f, 0.385379f, -0.904839f, 0.125000f, 0.375000f, - 0.346983f, 0.156665f, -0.815521f, 0.354778f, 0.386182f, -0.851467f, 0.250000f, 0.375000f, - 0.187832f, 0.060938f, -0.903437f, 0.183906f, 0.347330f, -0.919533f, 0.125000f, 0.500000f, - 0.473511f, 0.253711f, -0.699744f, 0.507571f, 0.411665f, -0.756904f, 0.375000f, 0.250000f, - 0.346983f, 0.156665f, -0.815521f, 0.354778f, 0.386182f, -0.851467f, 0.250000f, 0.375000f, - 0.497269f, 0.156665f, -0.734853f, 0.513723f, 0.386283f, -0.766078f, 0.375000f, 0.375000f, - 0.627664f, 0.156665f, -0.627664f, 0.652097f, 0.386703f, -0.652097f, 0.500000f, 0.375000f, - 0.518555f, 0.060938f, -0.766309f, 0.522105f, 0.348172f, -0.778577f, 0.375000f, 0.500000f, - 0.691875f, 0.450000f, -0.294375f, 0.833647f, 0.429394f, -0.347353f, 0.750000f, 0.000000f, - 0.597676f, 0.253711f, -0.597676f, 0.644272f, 0.412102f, -0.644272f, 0.500000f, 0.250000f, - 0.776558f, 0.253711f, -0.330405f, 0.841850f, 0.410181f, -0.350771f, 0.750000f, 0.250000f, - 0.841797f, 0.253711f, -0.000000f, 0.911768f, 0.410706f, -0.000000f, 1.000000f, 0.250000f, - 0.850430f, 0.060938f, -0.361836f, 0.865775f, 0.346844f, -0.360739f, 0.750000f, 0.500000f, - 0.623438f, 0.450000f, -0.421875f, 0.749483f, 0.430900f, -0.502594f, 0.625000f, 0.000000f, - 0.565608f, 0.351636f, -0.565608f, 0.639524f, 0.426636f, -0.639524f, 0.500000f, 0.125000f, - 0.662199f, 0.351636f, -0.448105f, 0.751345f, 0.426172f, -0.503843f, 0.625000f, 0.125000f, - 0.734892f, 0.351636f, -0.312678f, 0.835093f, 0.426082f, -0.347956f, 0.750000f, 0.125000f, - 0.699744f, 0.253711f, -0.473511f, 0.756911f, 0.411648f, -0.507575f, 0.625000f, 0.250000f, - 0.735000f, 0.450000f, -0.152812f, 0.885342f, 0.429903f, -0.177068f, 0.875000f, 0.000000f, - 0.734892f, 0.351636f, -0.312678f, 0.835093f, 0.426082f, -0.347956f, 0.750000f, 0.125000f, - 0.780698f, 0.351636f, -0.162314f, 0.887532f, 0.425181f, -0.177506f, 0.875000f, 0.125000f, - 0.796631f, 0.351636f, -0.000000f, 0.905094f, 0.425212f, -0.000000f, 1.000000f, 0.125000f, - 0.824961f, 0.253711f, -0.171516f, 0.894075f, 0.410676f, -0.178815f, 0.875000f, 0.250000f, - 0.699744f, 0.253711f, -0.473511f, 0.756910f, 0.411648f, -0.507575f, 0.625000f, 0.250000f, - 0.627664f, 0.156665f, -0.627664f, 0.652097f, 0.386703f, -0.652097f, 0.500000f, 0.375000f, - 0.734853f, 0.156665f, -0.497269f, 0.766083f, 0.386267f, -0.513726f, 0.625000f, 0.375000f, - 0.815521f, 0.156665f, -0.346983f, 0.851467f, 0.386182f, -0.354778f, 0.750000f, 0.375000f, - 0.766309f, 0.060938f, -0.518555f, 0.778582f, 0.348157f, -0.522108f, 0.625000f, 0.500000f, - 0.824961f, 0.253711f, -0.171516f, 0.894075f, 0.410676f, -0.178815f, 0.875000f, 0.250000f, - 0.815521f, 0.156665f, -0.346983f, 0.851467f, 0.386182f, -0.354778f, 0.750000f, 0.375000f, - 0.866353f, 0.156665f, -0.180122f, 0.904858f, 0.385333f, -0.180972f, 0.875000f, 0.375000f, - 0.884033f, 0.156665f, -0.000000f, 0.922766f, 0.385361f, -0.000000f, 1.000000f, 0.375000f, - 0.903437f, 0.060938f, -0.187832f, 0.919548f, 0.347288f, -0.183909f, 0.875000f, 0.500000f, - 0.361836f, 0.060938f, -0.850430f, 0.360706f, 0.347079f, -0.865695f, 0.250000f, 0.500000f, - 0.000000f, -0.124805f, -0.978516f, 0.000000f, 0.220939f, -0.975288f, 0.000000f, 0.750000f, - 0.384067f, -0.124805f, -0.902681f, 0.375125f, 0.220777f, -0.900299f, 0.250000f, 0.750000f, - 0.694746f, -0.124805f, -0.694746f, 0.689495f, 0.221799f, -0.689494f, 0.500000f, 0.750000f, - 0.392500f, -0.300000f, -0.922500f, 0.384615f, 0.000000f, -0.923077f, 0.250000f, 1.000000f, - 0.187832f, 0.060938f, -0.903437f, 0.183906f, 0.347330f, -0.919533f, 0.125000f, 0.500000f, - 0.000000f, -0.033032f, -0.953857f, 0.000000f, 0.293768f, -0.955877f, 0.000000f, 0.625000f, - 0.194348f, -0.033032f, -0.934780f, 0.187462f, 0.293782f, -0.937310f, 0.125000f, 0.625000f, - 0.374389f, -0.033032f, -0.879933f, 0.367565f, 0.294439f, -0.882157f, 0.250000f, 0.625000f, - 0.199373f, -0.124805f, -0.958945f, 0.191269f, 0.220950f, -0.956346f, 0.125000f, 0.750000f, - 0.518555f, 0.060938f, -0.766309f, 0.522105f, 0.348172f, -0.778578f, 0.375000f, 0.500000f, - 0.374389f, -0.033032f, -0.879933f, 0.367565f, 0.294439f, -0.882157f, 0.250000f, 0.625000f, - 0.536545f, -0.033032f, -0.792894f, 0.532249f, 0.294522f, -0.793705f, 0.375000f, 0.625000f, - 0.677239f, -0.033032f, -0.677239f, 0.675668f, 0.294866f, -0.675668f, 0.500000f, 0.625000f, - 0.550415f, -0.124805f, -0.813391f, 0.543115f, 0.221529f, -0.809908f, 0.375000f, 0.750000f, - 0.199373f, -0.124805f, -0.958945f, 0.191269f, 0.220950f, -0.956346f, 0.125000f, 0.750000f, - 0.000000f, -0.213940f, -0.994385f, 0.000000f, 0.124341f, -0.992240f, 0.000000f, 0.875000f, - 0.202606f, -0.213940f, -0.974497f, 0.194594f, 0.124347f, -0.972970f, 0.125000f, 0.875000f, - 0.390296f, -0.213940f, -0.917320f, 0.381616f, 0.124647f, -0.915878f, 0.250000f, 0.875000f, - 0.203750f, -0.300000f, -0.980000f, 0.196116f, 0.000000f, -0.980581f, 0.125000f, 1.000000f, - 0.550415f, -0.124805f, -0.813391f, 0.543115f, 0.221529f, -0.809908f, 0.375000f, 0.750000f, - 0.390296f, -0.213940f, -0.917320f, 0.381616f, 0.124647f, -0.915878f, 0.250000f, 0.875000f, - 0.559341f, -0.213940f, -0.826582f, 0.552607f, 0.124685f, -0.824063f, 0.375000f, 0.875000f, - 0.706013f, -0.213940f, -0.706013f, 0.701575f, 0.124842f, -0.701575f, 0.500000f, 0.875000f, - 0.562500f, -0.300000f, -0.831250f, 0.556953f, 0.000000f, -0.830544f, 0.375000f, 1.000000f, - 0.850430f, 0.060938f, -0.361836f, 0.865775f, 0.346844f, -0.360740f, 0.750000f, 0.500000f, - 0.694746f, -0.124805f, -0.694746f, 0.689494f, 0.221799f, -0.689495f, 0.500000f, 0.750000f, - 0.902681f, -0.124805f, -0.384067f, 0.900333f, 0.220616f, -0.375139f, 0.750000f, 0.750000f, - 0.978516f, -0.124805f, -0.000000f, 0.975288f, 0.220939f, -0.000000f, 1.000000f, 0.750000f, - 0.922500f, -0.300000f, -0.392500f, 0.923077f, 0.000000f, -0.384615f, 0.750000f, 1.000000f, - 0.766309f, 0.060938f, -0.518555f, 0.778582f, 0.348157f, -0.522108f, 0.625000f, 0.500000f, - 0.677239f, -0.033032f, -0.677239f, 0.675668f, 0.294866f, -0.675668f, 0.500000f, 0.625000f, - 0.792894f, -0.033032f, -0.536545f, 0.793708f, 0.294509f, -0.532252f, 0.625000f, 0.625000f, - 0.879933f, -0.033032f, -0.374389f, 0.882157f, 0.294439f, -0.367565f, 0.750000f, 0.625000f, - 0.813391f, -0.124805f, -0.550415f, 0.809910f, 0.221518f, -0.543116f, 0.625000f, 0.750000f, - 0.903437f, 0.060938f, -0.187832f, 0.919548f, 0.347287f, -0.183910f, 0.875000f, 0.500000f, - 0.879933f, -0.033032f, -0.374389f, 0.882157f, 0.294439f, -0.367565f, 0.750000f, 0.625000f, - 0.934780f, -0.033032f, -0.194348f, 0.937321f, 0.293744f, -0.187464f, 0.875000f, 0.625000f, - 0.953857f, -0.033032f, -0.000000f, 0.955877f, 0.293768f, -0.000000f, 1.000000f, 0.625000f, - 0.958945f, -0.124805f, -0.199373f, 0.956352f, 0.220920f, -0.191271f, 0.875000f, 0.750000f, - 0.813391f, -0.124805f, -0.550415f, 0.809910f, 0.221518f, -0.543116f, 0.625000f, 0.750000f, - 0.706013f, -0.213940f, -0.706013f, 0.701575f, 0.124842f, -0.701575f, 0.500000f, 0.875000f, - 0.826582f, -0.213940f, -0.559341f, 0.824063f, 0.124679f, -0.552607f, 0.625000f, 0.875000f, - 0.917320f, -0.213940f, -0.390296f, 0.915878f, 0.124647f, -0.381616f, 0.750000f, 0.875000f, - 0.831250f, -0.300000f, -0.562500f, 0.830544f, 0.000000f, -0.556953f, 0.625000f, 1.000000f, - 0.958945f, -0.124805f, -0.199373f, 0.956352f, 0.220920f, -0.191271f, 0.875000f, 0.750000f, - 0.917320f, -0.213940f, -0.390296f, 0.915878f, 0.124647f, -0.381616f, 0.750000f, 0.875000f, - 0.974497f, -0.213940f, -0.202606f, 0.972972f, 0.124330f, -0.194595f, 0.875000f, 0.875000f, - 0.994385f, -0.213940f, -0.000000f, 0.992240f, 0.124341f, -0.000000f, 1.000000f, 0.875000f, - 0.980000f, -0.300000f, -0.203750f, 0.980581f, 0.000000f, -0.196116f, 0.875000f, 1.000000f, - 1.000000f, -0.300000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 0.000000f, 0.000000f, - 0.000000f, -0.300000f, 1.000000f, 0.000000f, 0.000000f, 1.000000f, 1.000000f, 0.000000f, - 0.750000f, -0.675000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, -0.675000f, 0.750000f, 0.000000f, 0.000000f, 1.000000f, 1.000000f, 1.000000f, - 0.710000f, -0.300000f, 0.710000f, 0.707107f, 0.000000f, 0.707107f, 0.500000f, 0.000000f, - 0.875000f, -0.557812f, -0.000000f, 0.698100f, -0.716000f, 0.000000f, 0.000000f, 0.500000f, - 0.621250f, -0.557812f, 0.621250f, 0.496182f, -0.712466f, 0.496182f, 0.500000f, 0.500000f, - 0.000000f, -0.557812f, 0.875000f, 0.000000f, -0.716000f, 0.698100f, 1.000000f, 0.500000f, - 0.532500f, -0.675000f, 0.532500f, 0.707107f, 0.000000f, 0.707107f, 0.500000f, 1.000000f, - 0.922500f, -0.300000f, 0.392500f, 0.923077f, 0.000000f, 0.384615f, 0.250000f, 0.000000f, - 0.960938f, -0.448242f, -0.000000f, 0.876976f, -0.480535f, 0.000000f, 0.000000f, 0.250000f, - 0.886465f, -0.448242f, 0.377168f, 0.809660f, -0.480250f, 0.337358f, 0.250000f, 0.250000f, - 0.682266f, -0.448242f, 0.682266f, 0.619529f, -0.482045f, 0.619529f, 0.500000f, 0.250000f, - 0.807187f, -0.557812f, 0.343437f, 0.644654f, -0.715732f, 0.268606f, 0.250000f, 0.500000f, - 0.980000f, -0.300000f, 0.203750f, 0.980581f, 0.000000f, 0.196116f, 0.125000f, 0.000000f, - 0.989258f, -0.379175f, -0.000000f, 0.963722f, -0.266906f, 0.000000f, 0.000000f, 0.125000f, - 0.969473f, -0.379175f, 0.201561f, 0.945004f, -0.266919f, 0.189001f, 0.125000f, 0.125000f, - 0.912590f, -0.379175f, 0.388284f, 0.889432f, -0.267526f, 0.370596f, 0.250000f, 0.125000f, - 0.941719f, -0.448242f, 0.195791f, 0.859935f, -0.480554f, 0.171987f, 0.125000f, 0.250000f, - 0.831250f, -0.300000f, 0.562500f, 0.830544f, 0.000000f, 0.556953f, 0.375000f, 0.000000f, - 0.912590f, -0.379175f, 0.388284f, 0.889431f, -0.267526f, 0.370597f, 0.250000f, 0.125000f, - 0.822320f, -0.379175f, 0.556458f, 0.800254f, -0.267602f, 0.536641f, 0.375000f, 0.125000f, - 0.702373f, -0.379175f, 0.702373f, 0.681256f, -0.267921f, 0.681256f, 0.500000f, 0.125000f, - 0.798779f, -0.448242f, 0.540527f, 0.727894f, -0.481571f, 0.488118f, 0.375000f, 0.250000f, - 0.941719f, -0.448242f, 0.195791f, 0.859935f, -0.480554f, 0.171987f, 0.125000f, 0.250000f, - 0.920898f, -0.507642f, -0.000000f, 0.779645f, -0.626221f, 0.000000f, 0.000000f, 0.375000f, - 0.902480f, -0.507642f, 0.187633f, 0.764489f, -0.626241f, 0.152898f, 0.125000f, 0.375000f, - 0.849529f, -0.507642f, 0.361453f, 0.718967f, -0.627172f, 0.299570f, 0.250000f, 0.375000f, - 0.857500f, -0.557812f, 0.178281f, 0.684525f, -0.716019f, 0.136905f, 0.125000f, 0.500000f, - 0.798779f, -0.448242f, 0.540527f, 0.727894f, -0.481572f, 0.488118f, 0.375000f, 0.250000f, - 0.849529f, -0.507642f, 0.361453f, 0.718967f, -0.627172f, 0.299570f, 0.250000f, 0.375000f, - 0.765497f, -0.507642f, 0.518005f, 0.646817f, -0.627288f, 0.433748f, 0.375000f, 0.375000f, - 0.653838f, -0.507642f, 0.653838f, 0.550409f, -0.627775f, 0.550409f, 0.500000f, 0.375000f, - 0.727344f, -0.557812f, 0.492188f, 0.578969f, -0.716978f, 0.388249f, 0.375000f, 0.500000f, - 0.392500f, -0.300000f, 0.922500f, 0.384615f, 0.000000f, 0.923077f, 0.750000f, 0.000000f, - 0.682266f, -0.448242f, 0.682266f, 0.619529f, -0.482045f, 0.619529f, 0.500000f, 0.250000f, - 0.377168f, -0.448242f, 0.886465f, 0.337418f, -0.479966f, 0.809804f, 0.750000f, 0.250000f, - 0.000000f, -0.448242f, 0.960938f, 0.000000f, -0.480535f, 0.876976f, 1.000000f, 0.250000f, - 0.343437f, -0.557812f, 0.807187f, 0.268712f, -0.715463f, 0.644908f, 0.750000f, 0.500000f, - 0.562500f, -0.300000f, 0.831250f, 0.556953f, 0.000000f, 0.830544f, 0.625000f, 0.000000f, - 0.702373f, -0.379175f, 0.702373f, 0.681256f, -0.267921f, 0.681256f, 0.500000f, 0.125000f, - 0.556458f, -0.379175f, 0.822320f, 0.536643f, -0.267590f, 0.800256f, 0.625000f, 0.125000f, - 0.388284f, -0.379175f, 0.912590f, 0.370597f, -0.267526f, 0.889431f, 0.750000f, 0.125000f, - 0.540527f, -0.448242f, 0.798779f, 0.488123f, -0.481553f, 0.727903f, 0.625000f, 0.250000f, - 0.203750f, -0.300000f, 0.980000f, 0.196116f, 0.000000f, 0.980581f, 0.875000f, 0.000000f, - 0.388284f, -0.379175f, 0.912590f, 0.370596f, -0.267526f, 0.889432f, 0.750000f, 0.125000f, - 0.201561f, -0.379175f, 0.969473f, 0.189003f, -0.266885f, 0.945014f, 0.875000f, 0.125000f, - 0.000000f, -0.379175f, 0.989258f, 0.000000f, -0.266906f, 0.963722f, 1.000000f, 0.125000f, - 0.195791f, -0.448242f, 0.941719f, 0.171993f, -0.480502f, 0.859963f, 0.875000f, 0.250000f, - 0.540527f, -0.448242f, 0.798779f, 0.488123f, -0.481553f, 0.727903f, 0.625000f, 0.250000f, - 0.653838f, -0.507642f, 0.653838f, 0.550409f, -0.627775f, 0.550409f, 0.500000f, 0.375000f, - 0.518005f, -0.507642f, 0.765497f, 0.433756f, -0.627270f, 0.646829f, 0.625000f, 0.375000f, - 0.361453f, -0.507642f, 0.849529f, 0.299570f, -0.627172f, 0.718967f, 0.750000f, 0.375000f, - 0.492188f, -0.557812f, 0.727344f, 0.388259f, -0.716961f, 0.578983f, 0.625000f, 0.500000f, - 0.195791f, -0.448242f, 0.941719f, 0.171993f, -0.480502f, 0.859963f, 0.875000f, 0.250000f, - 0.361453f, -0.507642f, 0.849529f, 0.299570f, -0.627172f, 0.718967f, 0.750000f, 0.375000f, - 0.187633f, -0.507642f, 0.902480f, 0.152906f, -0.626188f, 0.764532f, 0.875000f, 0.375000f, - 0.000000f, -0.507642f, 0.920898f, 0.000000f, -0.626221f, 0.779645f, 1.000000f, 0.375000f, - 0.178281f, -0.557812f, 0.857500f, 0.136915f, -0.715970f, 0.684574f, 0.875000f, 0.500000f, - 0.807187f, -0.557812f, 0.343437f, 0.644654f, -0.715731f, 0.268606f, 0.250000f, 0.500000f, - 0.789062f, -0.632227f, -0.000000f, 0.636383f, -0.771373f, 0.000000f, 0.000000f, 0.750000f, - 0.727910f, -0.632227f, 0.309707f, 0.587700f, -0.771133f, 0.244875f, 0.250000f, 0.750000f, - 0.560234f, -0.632227f, 0.560234f, 0.448897f, -0.772647f, 0.448897f, 0.500000f, 0.750000f, - 0.691875f, -0.675000f, 0.294375f, 0.923077f, 0.000000f, 0.384615f, 0.250000f, 1.000000f, - 0.857500f, -0.557812f, 0.178281f, 0.684525f, -0.716018f, 0.136905f, 0.125000f, 0.500000f, - 0.829102f, -0.599194f, -0.000000f, 0.645429f, -0.763821f, 0.000000f, 0.000000f, 0.625000f, - 0.812519f, -0.599194f, 0.168929f, 0.632876f, -0.763837f, 0.126575f, 0.125000f, 0.625000f, - 0.764846f, -0.599194f, 0.325422f, 0.594912f, -0.764614f, 0.247880f, 0.250000f, 0.625000f, - 0.773281f, -0.632227f, 0.160771f, 0.624005f, -0.771390f, 0.124801f, 0.125000f, 0.750000f, - 0.727344f, -0.557812f, 0.492188f, 0.578969f, -0.716978f, 0.388249f, 0.375000f, 0.500000f, - 0.764846f, -0.599194f, 0.325422f, 0.594912f, -0.764614f, 0.247880f, 0.250000f, 0.625000f, - 0.689191f, -0.599194f, 0.466370f, 0.535179f, -0.764712f, 0.358885f, 0.375000f, 0.625000f, - 0.588662f, -0.599194f, 0.588662f, 0.455299f, -0.765118f, 0.455299f, 0.500000f, 0.625000f, - 0.655908f, -0.632227f, 0.443848f, 0.527662f, -0.772248f, 0.353844f, 0.375000f, 0.750000f, - 0.773281f, -0.632227f, 0.160771f, 0.624005f, -0.771390f, 0.124801f, 0.125000f, 0.750000f, - 0.760742f, -0.657349f, -0.000000f, 0.720596f, -0.693356f, 0.000000f, 0.000000f, 0.875000f, - 0.745527f, -0.657349f, 0.155001f, 0.706584f, -0.693375f, 0.141317f, 0.125000f, 0.875000f, - 0.701785f, -0.657349f, 0.298591f, 0.664366f, -0.694254f, 0.276819f, 0.250000f, 0.875000f, - 0.735000f, -0.675000f, 0.152812f, 0.980581f, 0.000000f, 0.196116f, 0.125000f, 1.000000f, - 0.655908f, -0.632227f, 0.443848f, 0.527662f, -0.772249f, 0.353844f, 0.375000f, 0.750000f, - 0.701785f, -0.657349f, 0.298591f, 0.664366f, -0.694254f, 0.276819f, 0.250000f, 0.875000f, - 0.632367f, -0.657349f, 0.427917f, 0.597679f, -0.694365f, 0.400796f, 0.375000f, 0.875000f, - 0.540127f, -0.657349f, 0.540127f, 0.508537f, -0.694825f, 0.508536f, 0.500000f, 0.875000f, - 0.623438f, -0.675000f, 0.421875f, 0.830544f, 0.000000f, 0.556953f, 0.375000f, 1.000000f, - 0.343437f, -0.557812f, 0.807187f, 0.268712f, -0.715463f, 0.644909f, 0.750000f, 0.500000f, - 0.560234f, -0.632227f, 0.560234f, 0.448897f, -0.772647f, 0.448897f, 0.500000f, 0.750000f, - 0.309707f, -0.632227f, 0.727910f, 0.244987f, -0.770892f, 0.587969f, 0.750000f, 0.750000f, - 0.000000f, -0.632227f, 0.789062f, 0.000000f, -0.771373f, 0.636383f, 1.000000f, 0.750000f, - 0.294375f, -0.675000f, 0.691875f, 0.384615f, 0.000000f, 0.923077f, 0.750000f, 1.000000f, - 0.492188f, -0.557812f, 0.727344f, 0.388259f, -0.716961f, 0.578983f, 0.625000f, 0.500000f, - 0.588662f, -0.599194f, 0.588662f, 0.455299f, -0.765118f, 0.455299f, 0.500000f, 0.625000f, - 0.466370f, -0.599194f, 0.689191f, 0.358895f, -0.764697f, 0.535195f, 0.625000f, 0.625000f, - 0.325422f, -0.599194f, 0.764846f, 0.247880f, -0.764614f, 0.594912f, 0.750000f, 0.625000f, - 0.443848f, -0.632227f, 0.655908f, 0.353854f, -0.772233f, 0.527677f, 0.625000f, 0.750000f, - 0.178281f, -0.557812f, 0.857500f, 0.136915f, -0.715969f, 0.684575f, 0.875000f, 0.500000f, - 0.325422f, -0.599194f, 0.764846f, 0.247880f, -0.764614f, 0.594912f, 0.750000f, 0.625000f, - 0.168929f, -0.599194f, 0.812519f, 0.126585f, -0.763793f, 0.632927f, 0.875000f, 0.625000f, - 0.000000f, -0.599194f, 0.829102f, 0.000000f, -0.763821f, 0.645429f, 1.000000f, 0.625000f, - 0.160771f, -0.632227f, 0.773281f, 0.124811f, -0.771346f, 0.624057f, 0.875000f, 0.750000f, - 0.443848f, -0.632227f, 0.655908f, 0.353854f, -0.772233f, 0.527677f, 0.625000f, 0.750000f, - 0.540127f, -0.657349f, 0.540127f, 0.508536f, -0.694825f, 0.508537f, 0.500000f, 0.875000f, - 0.427917f, -0.657349f, 0.632367f, 0.400806f, -0.694347f, 0.597693f, 0.625000f, 0.875000f, - 0.298591f, -0.657349f, 0.701785f, 0.276819f, -0.694254f, 0.664366f, 0.750000f, 0.875000f, - 0.421875f, -0.675000f, 0.623438f, 0.556953f, 0.000000f, 0.830544f, 0.625000f, 1.000000f, - 0.160771f, -0.632227f, 0.773281f, 0.124811f, -0.771346f, 0.624057f, 0.875000f, 0.750000f, - 0.298591f, -0.657349f, 0.701785f, 0.276819f, -0.694254f, 0.664366f, 0.750000f, 0.875000f, - 0.155001f, -0.657349f, 0.745527f, 0.141326f, -0.693324f, 0.706632f, 0.875000f, 0.875000f, - 0.000000f, -0.657349f, 0.760742f, 0.000000f, -0.693356f, 0.720596f, 1.000000f, 0.875000f, - 0.152812f, -0.675000f, 0.735000f, 0.196116f, 0.000000f, 0.980581f, 0.875000f, 1.000000f, - 0.000000f, -0.300000f, 1.000000f, 0.000000f, 0.000000f, 1.000000f, 0.000000f, 0.000000f, - -1.000000f, -0.300000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 1.000000f, 0.000000f, - 0.000000f, -0.675000f, 0.750000f, 0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, - -0.750000f, -0.675000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 1.000000f, 1.000000f, - -0.710000f, -0.300000f, 0.710000f, -0.707107f, 0.000000f, 0.707107f, 0.500000f, 0.000000f, - 0.000000f, -0.557812f, 0.875000f, 0.000000f, -0.716000f, 0.698100f, 0.000000f, 0.500000f, - -0.621250f, -0.557812f, 0.621250f, -0.496182f, -0.712466f, 0.496182f, 0.500000f, 0.500000f, - -0.875000f, -0.557812f, -0.000000f, -0.698100f, -0.716000f, -0.000000f, 1.000000f, 0.500000f, - -0.532500f, -0.675000f, 0.532500f, -0.707107f, 0.000000f, 0.707107f, 0.500000f, 1.000000f, - -0.392500f, -0.300000f, 0.922500f, -0.384615f, 0.000000f, 0.923077f, 0.250000f, 0.000000f, - 0.000000f, -0.448242f, 0.960938f, 0.000000f, -0.480535f, 0.876976f, 0.000000f, 0.250000f, - -0.377168f, -0.448242f, 0.886465f, -0.337358f, -0.480250f, 0.809660f, 0.250000f, 0.250000f, - -0.682266f, -0.448242f, 0.682266f, -0.619529f, -0.482045f, 0.619529f, 0.500000f, 0.250000f, - -0.343437f, -0.557812f, 0.807187f, -0.268606f, -0.715732f, 0.644654f, 0.250000f, 0.500000f, - -0.203750f, -0.300000f, 0.980000f, -0.196116f, 0.000000f, 0.980581f, 0.125000f, 0.000000f, - 0.000000f, -0.379175f, 0.989258f, 0.000000f, -0.266906f, 0.963722f, 0.000000f, 0.125000f, - -0.201561f, -0.379175f, 0.969473f, -0.189001f, -0.266919f, 0.945004f, 0.125000f, 0.125000f, - -0.388284f, -0.379175f, 0.912590f, -0.370596f, -0.267526f, 0.889432f, 0.250000f, 0.125000f, - -0.195791f, -0.448242f, 0.941719f, -0.171987f, -0.480554f, 0.859935f, 0.125000f, 0.250000f, - -0.562500f, -0.300000f, 0.831250f, -0.556953f, 0.000000f, 0.830544f, 0.375000f, 0.000000f, - -0.388284f, -0.379175f, 0.912590f, -0.370597f, -0.267526f, 0.889431f, 0.250000f, 0.125000f, - -0.556458f, -0.379175f, 0.822320f, -0.536641f, -0.267602f, 0.800254f, 0.375000f, 0.125000f, - -0.702373f, -0.379175f, 0.702373f, -0.681256f, -0.267921f, 0.681256f, 0.500000f, 0.125000f, - -0.540527f, -0.448242f, 0.798779f, -0.488118f, -0.481571f, 0.727894f, 0.375000f, 0.250000f, - -0.195791f, -0.448242f, 0.941719f, -0.171987f, -0.480554f, 0.859935f, 0.125000f, 0.250000f, - 0.000000f, -0.507642f, 0.920898f, 0.000000f, -0.626221f, 0.779645f, 0.000000f, 0.375000f, - -0.187633f, -0.507642f, 0.902480f, -0.152898f, -0.626241f, 0.764489f, 0.125000f, 0.375000f, - -0.361453f, -0.507642f, 0.849529f, -0.299570f, -0.627172f, 0.718967f, 0.250000f, 0.375000f, - -0.178281f, -0.557812f, 0.857500f, -0.136905f, -0.716019f, 0.684525f, 0.125000f, 0.500000f, - -0.540527f, -0.448242f, 0.798779f, -0.488118f, -0.481572f, 0.727894f, 0.375000f, 0.250000f, - -0.361453f, -0.507642f, 0.849529f, -0.299570f, -0.627172f, 0.718967f, 0.250000f, 0.375000f, - -0.518005f, -0.507642f, 0.765497f, -0.433748f, -0.627288f, 0.646817f, 0.375000f, 0.375000f, - -0.653838f, -0.507642f, 0.653838f, -0.550409f, -0.627775f, 0.550409f, 0.500000f, 0.375000f, - -0.492188f, -0.557812f, 0.727344f, -0.388249f, -0.716978f, 0.578969f, 0.375000f, 0.500000f, - -0.922500f, -0.300000f, 0.392500f, -0.923077f, 0.000000f, 0.384615f, 0.750000f, 0.000000f, - -0.682266f, -0.448242f, 0.682266f, -0.619529f, -0.482045f, 0.619529f, 0.500000f, 0.250000f, - -0.886465f, -0.448242f, 0.377168f, -0.809804f, -0.479966f, 0.337418f, 0.750000f, 0.250000f, - -0.960938f, -0.448242f, -0.000000f, -0.876976f, -0.480535f, -0.000000f, 1.000000f, 0.250000f, - -0.807187f, -0.557812f, 0.343437f, -0.644908f, -0.715463f, 0.268712f, 0.750000f, 0.500000f, - -0.831250f, -0.300000f, 0.562500f, -0.830544f, 0.000000f, 0.556953f, 0.625000f, 0.000000f, - -0.702373f, -0.379175f, 0.702373f, -0.681256f, -0.267921f, 0.681256f, 0.500000f, 0.125000f, - -0.822320f, -0.379175f, 0.556458f, -0.800256f, -0.267590f, 0.536643f, 0.625000f, 0.125000f, - -0.912590f, -0.379175f, 0.388284f, -0.889431f, -0.267526f, 0.370597f, 0.750000f, 0.125000f, - -0.798779f, -0.448242f, 0.540527f, -0.727903f, -0.481553f, 0.488123f, 0.625000f, 0.250000f, - -0.980000f, -0.300000f, 0.203750f, -0.980581f, 0.000000f, 0.196116f, 0.875000f, 0.000000f, - -0.912590f, -0.379175f, 0.388284f, -0.889432f, -0.267526f, 0.370596f, 0.750000f, 0.125000f, - -0.969473f, -0.379175f, 0.201561f, -0.945014f, -0.266885f, 0.189003f, 0.875000f, 0.125000f, - -0.989258f, -0.379175f, -0.000000f, -0.963722f, -0.266906f, -0.000000f, 1.000000f, 0.125000f, - -0.941719f, -0.448242f, 0.195791f, -0.859963f, -0.480502f, 0.171993f, 0.875000f, 0.250000f, - -0.798779f, -0.448242f, 0.540527f, -0.727903f, -0.481553f, 0.488123f, 0.625000f, 0.250000f, - -0.653838f, -0.507642f, 0.653838f, -0.550409f, -0.627775f, 0.550409f, 0.500000f, 0.375000f, - -0.765497f, -0.507642f, 0.518005f, -0.646829f, -0.627270f, 0.433756f, 0.625000f, 0.375000f, - -0.849529f, -0.507642f, 0.361453f, -0.718967f, -0.627172f, 0.299570f, 0.750000f, 0.375000f, - -0.727344f, -0.557812f, 0.492188f, -0.578983f, -0.716961f, 0.388259f, 0.625000f, 0.500000f, - -0.941719f, -0.448242f, 0.195791f, -0.859963f, -0.480502f, 0.171993f, 0.875000f, 0.250000f, - -0.849529f, -0.507642f, 0.361453f, -0.718967f, -0.627172f, 0.299570f, 0.750000f, 0.375000f, - -0.902480f, -0.507642f, 0.187633f, -0.764532f, -0.626188f, 0.152906f, 0.875000f, 0.375000f, - -0.920898f, -0.507642f, -0.000000f, -0.779645f, -0.626221f, -0.000000f, 1.000000f, 0.375000f, - -0.857500f, -0.557812f, 0.178281f, -0.684574f, -0.715970f, 0.136915f, 0.875000f, 0.500000f, - -0.343437f, -0.557812f, 0.807187f, -0.268606f, -0.715731f, 0.644654f, 0.250000f, 0.500000f, - 0.000000f, -0.632227f, 0.789062f, 0.000000f, -0.771373f, 0.636383f, 0.000000f, 0.750000f, - -0.309707f, -0.632227f, 0.727910f, -0.244875f, -0.771133f, 0.587700f, 0.250000f, 0.750000f, - -0.560234f, -0.632227f, 0.560234f, -0.448897f, -0.772647f, 0.448897f, 0.500000f, 0.750000f, - -0.294375f, -0.675000f, 0.691875f, -0.384615f, 0.000000f, 0.923077f, 0.250000f, 1.000000f, - -0.178281f, -0.557812f, 0.857500f, -0.136905f, -0.716018f, 0.684525f, 0.125000f, 0.500000f, - 0.000000f, -0.599194f, 0.829102f, 0.000000f, -0.763821f, 0.645429f, 0.000000f, 0.625000f, - -0.168929f, -0.599194f, 0.812519f, -0.126575f, -0.763837f, 0.632876f, 0.125000f, 0.625000f, - -0.325422f, -0.599194f, 0.764846f, -0.247880f, -0.764614f, 0.594912f, 0.250000f, 0.625000f, - -0.160771f, -0.632227f, 0.773281f, -0.124801f, -0.771390f, 0.624005f, 0.125000f, 0.750000f, - -0.492188f, -0.557812f, 0.727344f, -0.388249f, -0.716978f, 0.578969f, 0.375000f, 0.500000f, - -0.325422f, -0.599194f, 0.764846f, -0.247880f, -0.764614f, 0.594912f, 0.250000f, 0.625000f, - -0.466370f, -0.599194f, 0.689191f, -0.358885f, -0.764712f, 0.535179f, 0.375000f, 0.625000f, - -0.588662f, -0.599194f, 0.588662f, -0.455299f, -0.765118f, 0.455299f, 0.500000f, 0.625000f, - -0.443848f, -0.632227f, 0.655908f, -0.353844f, -0.772248f, 0.527662f, 0.375000f, 0.750000f, - -0.160771f, -0.632227f, 0.773281f, -0.124801f, -0.771390f, 0.624005f, 0.125000f, 0.750000f, - 0.000000f, -0.657349f, 0.760742f, 0.000000f, -0.693356f, 0.720596f, 0.000000f, 0.875000f, - -0.155001f, -0.657349f, 0.745527f, -0.141317f, -0.693375f, 0.706584f, 0.125000f, 0.875000f, - -0.298591f, -0.657349f, 0.701785f, -0.276819f, -0.694254f, 0.664366f, 0.250000f, 0.875000f, - -0.152812f, -0.675000f, 0.735000f, -0.196116f, 0.000000f, 0.980581f, 0.125000f, 1.000000f, - -0.443848f, -0.632227f, 0.655908f, -0.353844f, -0.772249f, 0.527662f, 0.375000f, 0.750000f, - -0.298591f, -0.657349f, 0.701785f, -0.276819f, -0.694254f, 0.664366f, 0.250000f, 0.875000f, - -0.427917f, -0.657349f, 0.632367f, -0.400796f, -0.694365f, 0.597679f, 0.375000f, 0.875000f, - -0.540127f, -0.657349f, 0.540127f, -0.508536f, -0.694825f, 0.508537f, 0.500000f, 0.875000f, - -0.421875f, -0.675000f, 0.623438f, -0.556953f, 0.000000f, 0.830544f, 0.375000f, 1.000000f, - -0.807187f, -0.557812f, 0.343437f, -0.644909f, -0.715463f, 0.268712f, 0.750000f, 0.500000f, - -0.560234f, -0.632227f, 0.560234f, -0.448897f, -0.772647f, 0.448897f, 0.500000f, 0.750000f, - -0.727910f, -0.632227f, 0.309707f, -0.587969f, -0.770892f, 0.244987f, 0.750000f, 0.750000f, - -0.789062f, -0.632227f, -0.000000f, -0.636383f, -0.771373f, -0.000000f, 1.000000f, 0.750000f, - -0.691875f, -0.675000f, 0.294375f, -0.923077f, 0.000000f, 0.384615f, 0.750000f, 1.000000f, - -0.727344f, -0.557812f, 0.492188f, -0.578983f, -0.716961f, 0.388259f, 0.625000f, 0.500000f, - -0.588662f, -0.599194f, 0.588662f, -0.455299f, -0.765118f, 0.455299f, 0.500000f, 0.625000f, - -0.689191f, -0.599194f, 0.466370f, -0.535195f, -0.764697f, 0.358895f, 0.625000f, 0.625000f, - -0.764846f, -0.599194f, 0.325422f, -0.594912f, -0.764614f, 0.247880f, 0.750000f, 0.625000f, - -0.655908f, -0.632227f, 0.443848f, -0.527677f, -0.772233f, 0.353854f, 0.625000f, 0.750000f, - -0.857500f, -0.557812f, 0.178281f, -0.684575f, -0.715969f, 0.136915f, 0.875000f, 0.500000f, - -0.764846f, -0.599194f, 0.325422f, -0.594912f, -0.764614f, 0.247880f, 0.750000f, 0.625000f, - -0.812519f, -0.599194f, 0.168929f, -0.632927f, -0.763793f, 0.126585f, 0.875000f, 0.625000f, - -0.829102f, -0.599194f, -0.000000f, -0.645429f, -0.763821f, -0.000000f, 1.000000f, 0.625000f, - -0.773281f, -0.632227f, 0.160771f, -0.624057f, -0.771346f, 0.124811f, 0.875000f, 0.750000f, - -0.655908f, -0.632227f, 0.443848f, -0.527677f, -0.772233f, 0.353854f, 0.625000f, 0.750000f, - -0.540127f, -0.657349f, 0.540127f, -0.508537f, -0.694825f, 0.508536f, 0.500000f, 0.875000f, - -0.632367f, -0.657349f, 0.427917f, -0.597693f, -0.694347f, 0.400806f, 0.625000f, 0.875000f, - -0.701785f, -0.657349f, 0.298591f, -0.664366f, -0.694254f, 0.276819f, 0.750000f, 0.875000f, - -0.623438f, -0.675000f, 0.421875f, -0.830544f, 0.000000f, 0.556953f, 0.625000f, 1.000000f, - -0.773281f, -0.632227f, 0.160771f, -0.624057f, -0.771346f, 0.124811f, 0.875000f, 0.750000f, - -0.701785f, -0.657349f, 0.298591f, -0.664366f, -0.694254f, 0.276819f, 0.750000f, 0.875000f, - -0.745527f, -0.657349f, 0.155001f, -0.706632f, -0.693324f, 0.141326f, 0.875000f, 0.875000f, - -0.760742f, -0.657349f, -0.000000f, -0.720596f, -0.693356f, -0.000000f, 1.000000f, 0.875000f, - -0.735000f, -0.675000f, 0.152812f, -0.980581f, 0.000000f, 0.196116f, 0.875000f, 1.000000f, - -1.000000f, -0.300000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 0.000000f, 0.000000f, - 0.000000f, -0.300000f, -1.000000f, 0.000000f, 0.000000f, -1.000000f, 1.000000f, 0.000000f, - -0.750000f, -0.675000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, -0.675000f, -0.750000f, 0.000000f, 0.000000f, -1.000000f, 1.000000f, 1.000000f, - -0.710000f, -0.300000f, -0.710000f, -0.707107f, -0.000000f, -0.707107f, 0.500000f, 0.000000f, - -0.875000f, -0.557812f, -0.000000f, -0.698100f, -0.716000f, -0.000000f, 0.000000f, 0.500000f, - -0.621250f, -0.557812f, -0.621250f, -0.496182f, -0.712466f, -0.496182f, 0.500000f, 0.500000f, - 0.000000f, -0.557812f, -0.875000f, 0.000000f, -0.716000f, -0.698100f, 1.000000f, 0.500000f, - -0.532500f, -0.675000f, -0.532500f, -0.707107f, -0.000000f, -0.707107f, 0.500000f, 1.000000f, - -0.922500f, -0.300000f, -0.392500f, -0.923077f, -0.000000f, -0.384615f, 0.250000f, 0.000000f, - -0.960938f, -0.448242f, -0.000000f, -0.876976f, -0.480535f, -0.000000f, 0.000000f, 0.250000f, - -0.886465f, -0.448242f, -0.377168f, -0.809660f, -0.480250f, -0.337358f, 0.250000f, 0.250000f, - -0.682266f, -0.448242f, -0.682266f, -0.619529f, -0.482045f, -0.619529f, 0.500000f, 0.250000f, - -0.807187f, -0.557812f, -0.343437f, -0.644654f, -0.715732f, -0.268606f, 0.250000f, 0.500000f, - -0.980000f, -0.300000f, -0.203750f, -0.980581f, -0.000000f, -0.196116f, 0.125000f, 0.000000f, - -0.989258f, -0.379175f, -0.000000f, -0.963722f, -0.266906f, -0.000000f, 0.000000f, 0.125000f, - -0.969473f, -0.379175f, -0.201561f, -0.945004f, -0.266919f, -0.189001f, 0.125000f, 0.125000f, - -0.912590f, -0.379175f, -0.388284f, -0.889432f, -0.267526f, -0.370596f, 0.250000f, 0.125000f, - -0.941719f, -0.448242f, -0.195791f, -0.859935f, -0.480554f, -0.171987f, 0.125000f, 0.250000f, - -0.831250f, -0.300000f, -0.562500f, -0.830544f, -0.000000f, -0.556953f, 0.375000f, 0.000000f, - -0.912590f, -0.379175f, -0.388284f, -0.889431f, -0.267526f, -0.370597f, 0.250000f, 0.125000f, - -0.822320f, -0.379175f, -0.556458f, -0.800254f, -0.267602f, -0.536641f, 0.375000f, 0.125000f, - -0.702373f, -0.379175f, -0.702373f, -0.681256f, -0.267921f, -0.681256f, 0.500000f, 0.125000f, - -0.798779f, -0.448242f, -0.540527f, -0.727894f, -0.481571f, -0.488118f, 0.375000f, 0.250000f, - -0.941719f, -0.448242f, -0.195791f, -0.859935f, -0.480554f, -0.171987f, 0.125000f, 0.250000f, - -0.920898f, -0.507642f, -0.000000f, -0.779645f, -0.626221f, -0.000000f, 0.000000f, 0.375000f, - -0.902480f, -0.507642f, -0.187633f, -0.764489f, -0.626241f, -0.152898f, 0.125000f, 0.375000f, - -0.849529f, -0.507642f, -0.361453f, -0.718967f, -0.627172f, -0.299570f, 0.250000f, 0.375000f, - -0.857500f, -0.557812f, -0.178281f, -0.684525f, -0.716019f, -0.136905f, 0.125000f, 0.500000f, - -0.798779f, -0.448242f, -0.540527f, -0.727894f, -0.481572f, -0.488118f, 0.375000f, 0.250000f, - -0.849529f, -0.507642f, -0.361453f, -0.718967f, -0.627172f, -0.299570f, 0.250000f, 0.375000f, - -0.765497f, -0.507642f, -0.518005f, -0.646817f, -0.627288f, -0.433748f, 0.375000f, 0.375000f, - -0.653838f, -0.507642f, -0.653838f, -0.550409f, -0.627775f, -0.550409f, 0.500000f, 0.375000f, - -0.727344f, -0.557812f, -0.492188f, -0.578969f, -0.716978f, -0.388249f, 0.375000f, 0.500000f, - -0.392500f, -0.300000f, -0.922500f, -0.384615f, -0.000000f, -0.923077f, 0.750000f, 0.000000f, - -0.682266f, -0.448242f, -0.682266f, -0.619529f, -0.482045f, -0.619529f, 0.500000f, 0.250000f, - -0.377168f, -0.448242f, -0.886465f, -0.337418f, -0.479966f, -0.809804f, 0.750000f, 0.250000f, - 0.000000f, -0.448242f, -0.960938f, 0.000000f, -0.480535f, -0.876976f, 1.000000f, 0.250000f, - -0.343437f, -0.557812f, -0.807187f, -0.268712f, -0.715463f, -0.644908f, 0.750000f, 0.500000f, - -0.562500f, -0.300000f, -0.831250f, -0.556953f, -0.000000f, -0.830544f, 0.625000f, 0.000000f, - -0.702373f, -0.379175f, -0.702373f, -0.681256f, -0.267921f, -0.681256f, 0.500000f, 0.125000f, - -0.556458f, -0.379175f, -0.822320f, -0.536643f, -0.267590f, -0.800256f, 0.625000f, 0.125000f, - -0.388284f, -0.379175f, -0.912590f, -0.370597f, -0.267526f, -0.889431f, 0.750000f, 0.125000f, - -0.540527f, -0.448242f, -0.798779f, -0.488123f, -0.481553f, -0.727903f, 0.625000f, 0.250000f, - -0.203750f, -0.300000f, -0.980000f, -0.196116f, -0.000000f, -0.980581f, 0.875000f, 0.000000f, - -0.388284f, -0.379175f, -0.912590f, -0.370596f, -0.267526f, -0.889432f, 0.750000f, 0.125000f, - -0.201561f, -0.379175f, -0.969473f, -0.189003f, -0.266885f, -0.945014f, 0.875000f, 0.125000f, - 0.000000f, -0.379175f, -0.989258f, 0.000000f, -0.266906f, -0.963722f, 1.000000f, 0.125000f, - -0.195791f, -0.448242f, -0.941719f, -0.171993f, -0.480502f, -0.859963f, 0.875000f, 0.250000f, - -0.540527f, -0.448242f, -0.798779f, -0.488123f, -0.481553f, -0.727903f, 0.625000f, 0.250000f, - -0.653838f, -0.507642f, -0.653838f, -0.550409f, -0.627775f, -0.550409f, 0.500000f, 0.375000f, - -0.518005f, -0.507642f, -0.765497f, -0.433756f, -0.627270f, -0.646829f, 0.625000f, 0.375000f, - -0.361453f, -0.507642f, -0.849529f, -0.299570f, -0.627172f, -0.718967f, 0.750000f, 0.375000f, - -0.492188f, -0.557812f, -0.727344f, -0.388259f, -0.716961f, -0.578983f, 0.625000f, 0.500000f, - -0.195791f, -0.448242f, -0.941719f, -0.171993f, -0.480502f, -0.859963f, 0.875000f, 0.250000f, - -0.361453f, -0.507642f, -0.849529f, -0.299570f, -0.627172f, -0.718967f, 0.750000f, 0.375000f, - -0.187633f, -0.507642f, -0.902480f, -0.152906f, -0.626188f, -0.764532f, 0.875000f, 0.375000f, - 0.000000f, -0.507642f, -0.920898f, 0.000000f, -0.626221f, -0.779645f, 1.000000f, 0.375000f, - -0.178281f, -0.557812f, -0.857500f, -0.136915f, -0.715970f, -0.684574f, 0.875000f, 0.500000f, - -0.807187f, -0.557812f, -0.343437f, -0.644654f, -0.715731f, -0.268606f, 0.250000f, 0.500000f, - -0.789062f, -0.632227f, -0.000000f, -0.636383f, -0.771373f, -0.000000f, 0.000000f, 0.750000f, - -0.727910f, -0.632227f, -0.309707f, -0.587700f, -0.771133f, -0.244875f, 0.250000f, 0.750000f, - -0.560234f, -0.632227f, -0.560234f, -0.448897f, -0.772647f, -0.448897f, 0.500000f, 0.750000f, - -0.691875f, -0.675000f, -0.294375f, -0.923077f, -0.000000f, -0.384615f, 0.250000f, 1.000000f, - -0.857500f, -0.557812f, -0.178281f, -0.684525f, -0.716018f, -0.136905f, 0.125000f, 0.500000f, - -0.829102f, -0.599194f, -0.000000f, -0.645429f, -0.763821f, -0.000000f, 0.000000f, 0.625000f, - -0.812519f, -0.599194f, -0.168929f, -0.632876f, -0.763837f, -0.126575f, 0.125000f, 0.625000f, - -0.764846f, -0.599194f, -0.325422f, -0.594912f, -0.764614f, -0.247880f, 0.250000f, 0.625000f, - -0.773281f, -0.632227f, -0.160771f, -0.624005f, -0.771390f, -0.124801f, 0.125000f, 0.750000f, - -0.727344f, -0.557812f, -0.492188f, -0.578969f, -0.716978f, -0.388249f, 0.375000f, 0.500000f, - -0.764846f, -0.599194f, -0.325422f, -0.594912f, -0.764614f, -0.247880f, 0.250000f, 0.625000f, - -0.689191f, -0.599194f, -0.466370f, -0.535179f, -0.764712f, -0.358885f, 0.375000f, 0.625000f, - -0.588662f, -0.599194f, -0.588662f, -0.455299f, -0.765118f, -0.455299f, 0.500000f, 0.625000f, - -0.655908f, -0.632227f, -0.443848f, -0.527662f, -0.772248f, -0.353844f, 0.375000f, 0.750000f, - -0.773281f, -0.632227f, -0.160771f, -0.624005f, -0.771390f, -0.124801f, 0.125000f, 0.750000f, - -0.760742f, -0.657349f, -0.000000f, -0.720596f, -0.693356f, -0.000000f, 0.000000f, 0.875000f, - -0.745527f, -0.657349f, -0.155001f, -0.706584f, -0.693375f, -0.141317f, 0.125000f, 0.875000f, - -0.701785f, -0.657349f, -0.298591f, -0.664366f, -0.694254f, -0.276819f, 0.250000f, 0.875000f, - -0.735000f, -0.675000f, -0.152812f, -0.980581f, -0.000000f, -0.196116f, 0.125000f, 1.000000f, - -0.655908f, -0.632227f, -0.443848f, -0.527662f, -0.772249f, -0.353844f, 0.375000f, 0.750000f, - -0.701785f, -0.657349f, -0.298591f, -0.664366f, -0.694254f, -0.276819f, 0.250000f, 0.875000f, - -0.632367f, -0.657349f, -0.427917f, -0.597679f, -0.694365f, -0.400796f, 0.375000f, 0.875000f, - -0.540127f, -0.657349f, -0.540127f, -0.508537f, -0.694825f, -0.508536f, 0.500000f, 0.875000f, - -0.623438f, -0.675000f, -0.421875f, -0.830544f, -0.000000f, -0.556953f, 0.375000f, 1.000000f, - -0.343437f, -0.557812f, -0.807187f, -0.268712f, -0.715463f, -0.644909f, 0.750000f, 0.500000f, - -0.560234f, -0.632227f, -0.560234f, -0.448897f, -0.772647f, -0.448897f, 0.500000f, 0.750000f, - -0.309707f, -0.632227f, -0.727910f, -0.244987f, -0.770892f, -0.587969f, 0.750000f, 0.750000f, - 0.000000f, -0.632227f, -0.789062f, 0.000000f, -0.771373f, -0.636383f, 1.000000f, 0.750000f, - -0.294375f, -0.675000f, -0.691875f, -0.384615f, -0.000000f, -0.923077f, 0.750000f, 1.000000f, - -0.492188f, -0.557812f, -0.727344f, -0.388259f, -0.716961f, -0.578983f, 0.625000f, 0.500000f, - -0.588662f, -0.599194f, -0.588662f, -0.455299f, -0.765118f, -0.455299f, 0.500000f, 0.625000f, - -0.466370f, -0.599194f, -0.689191f, -0.358895f, -0.764697f, -0.535195f, 0.625000f, 0.625000f, - -0.325422f, -0.599194f, -0.764846f, -0.247880f, -0.764614f, -0.594912f, 0.750000f, 0.625000f, - -0.443848f, -0.632227f, -0.655908f, -0.353854f, -0.772233f, -0.527677f, 0.625000f, 0.750000f, - -0.178281f, -0.557812f, -0.857500f, -0.136915f, -0.715969f, -0.684575f, 0.875000f, 0.500000f, - -0.325422f, -0.599194f, -0.764846f, -0.247880f, -0.764614f, -0.594912f, 0.750000f, 0.625000f, - -0.168929f, -0.599194f, -0.812519f, -0.126585f, -0.763793f, -0.632927f, 0.875000f, 0.625000f, - 0.000000f, -0.599194f, -0.829102f, 0.000000f, -0.763821f, -0.645429f, 1.000000f, 0.625000f, - -0.160771f, -0.632227f, -0.773281f, -0.124811f, -0.771346f, -0.624057f, 0.875000f, 0.750000f, - -0.443848f, -0.632227f, -0.655908f, -0.353854f, -0.772233f, -0.527677f, 0.625000f, 0.750000f, - -0.540127f, -0.657349f, -0.540127f, -0.508536f, -0.694825f, -0.508537f, 0.500000f, 0.875000f, - -0.427917f, -0.657349f, -0.632367f, -0.400806f, -0.694347f, -0.597693f, 0.625000f, 0.875000f, - -0.298591f, -0.657349f, -0.701785f, -0.276819f, -0.694254f, -0.664366f, 0.750000f, 0.875000f, - -0.421875f, -0.675000f, -0.623438f, -0.556953f, -0.000000f, -0.830544f, 0.625000f, 1.000000f, - -0.160771f, -0.632227f, -0.773281f, -0.124811f, -0.771346f, -0.624057f, 0.875000f, 0.750000f, - -0.298591f, -0.657349f, -0.701785f, -0.276819f, -0.694254f, -0.664366f, 0.750000f, 0.875000f, - -0.155001f, -0.657349f, -0.745527f, -0.141326f, -0.693324f, -0.706632f, 0.875000f, 0.875000f, - 0.000000f, -0.657349f, -0.760742f, 0.000000f, -0.693356f, -0.720596f, 1.000000f, 0.875000f, - -0.152812f, -0.675000f, -0.735000f, -0.196116f, -0.000000f, -0.980581f, 0.875000f, 1.000000f, - 0.000000f, -0.300000f, -1.000000f, 0.000000f, 0.000000f, -1.000000f, 0.000000f, 0.000000f, - 1.000000f, -0.300000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 1.000000f, 0.000000f, - 0.000000f, -0.675000f, -0.750000f, 0.000000f, 0.000000f, -1.000000f, 0.000000f, 1.000000f, - 0.750000f, -0.675000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 1.000000f, 1.000000f, - 0.710000f, -0.300000f, -0.710000f, 0.707107f, 0.000000f, -0.707107f, 0.500000f, 0.000000f, - 0.000000f, -0.557812f, -0.875000f, 0.000000f, -0.716000f, -0.698100f, 0.000000f, 0.500000f, - 0.621250f, -0.557812f, -0.621250f, 0.496182f, -0.712466f, -0.496182f, 0.500000f, 0.500000f, - 0.875000f, -0.557812f, -0.000000f, 0.698100f, -0.716000f, 0.000000f, 1.000000f, 0.500000f, - 0.532500f, -0.675000f, -0.532500f, 0.707107f, 0.000000f, -0.707107f, 0.500000f, 1.000000f, - 0.392500f, -0.300000f, -0.922500f, 0.384615f, 0.000000f, -0.923077f, 0.250000f, 0.000000f, - 0.000000f, -0.448242f, -0.960938f, 0.000000f, -0.480535f, -0.876976f, 0.000000f, 0.250000f, - 0.377168f, -0.448242f, -0.886465f, 0.337358f, -0.480250f, -0.809660f, 0.250000f, 0.250000f, - 0.682266f, -0.448242f, -0.682266f, 0.619529f, -0.482045f, -0.619529f, 0.500000f, 0.250000f, - 0.343437f, -0.557812f, -0.807187f, 0.268606f, -0.715732f, -0.644654f, 0.250000f, 0.500000f, - 0.203750f, -0.300000f, -0.980000f, 0.196116f, 0.000000f, -0.980581f, 0.125000f, 0.000000f, - 0.000000f, -0.379175f, -0.989258f, 0.000000f, -0.266906f, -0.963722f, 0.000000f, 0.125000f, - 0.201561f, -0.379175f, -0.969473f, 0.189001f, -0.266919f, -0.945004f, 0.125000f, 0.125000f, - 0.388284f, -0.379175f, -0.912590f, 0.370596f, -0.267526f, -0.889432f, 0.250000f, 0.125000f, - 0.195791f, -0.448242f, -0.941719f, 0.171987f, -0.480554f, -0.859935f, 0.125000f, 0.250000f, - 0.562500f, -0.300000f, -0.831250f, 0.556953f, 0.000000f, -0.830544f, 0.375000f, 0.000000f, - 0.388284f, -0.379175f, -0.912590f, 0.370597f, -0.267526f, -0.889431f, 0.250000f, 0.125000f, - 0.556458f, -0.379175f, -0.822320f, 0.536641f, -0.267602f, -0.800254f, 0.375000f, 0.125000f, - 0.702373f, -0.379175f, -0.702373f, 0.681256f, -0.267921f, -0.681256f, 0.500000f, 0.125000f, - 0.540527f, -0.448242f, -0.798779f, 0.488118f, -0.481571f, -0.727894f, 0.375000f, 0.250000f, - 0.195791f, -0.448242f, -0.941719f, 0.171987f, -0.480554f, -0.859935f, 0.125000f, 0.250000f, - 0.000000f, -0.507642f, -0.920898f, 0.000000f, -0.626221f, -0.779645f, 0.000000f, 0.375000f, - 0.187633f, -0.507642f, -0.902480f, 0.152898f, -0.626241f, -0.764489f, 0.125000f, 0.375000f, - 0.361453f, -0.507642f, -0.849529f, 0.299570f, -0.627172f, -0.718967f, 0.250000f, 0.375000f, - 0.178281f, -0.557812f, -0.857500f, 0.136905f, -0.716019f, -0.684525f, 0.125000f, 0.500000f, - 0.540527f, -0.448242f, -0.798779f, 0.488118f, -0.481572f, -0.727894f, 0.375000f, 0.250000f, - 0.361453f, -0.507642f, -0.849529f, 0.299570f, -0.627172f, -0.718967f, 0.250000f, 0.375000f, - 0.518005f, -0.507642f, -0.765497f, 0.433748f, -0.627288f, -0.646817f, 0.375000f, 0.375000f, - 0.653838f, -0.507642f, -0.653838f, 0.550409f, -0.627775f, -0.550409f, 0.500000f, 0.375000f, - 0.492188f, -0.557812f, -0.727344f, 0.388249f, -0.716978f, -0.578969f, 0.375000f, 0.500000f, - 0.922500f, -0.300000f, -0.392500f, 0.923077f, 0.000000f, -0.384615f, 0.750000f, 0.000000f, - 0.682266f, -0.448242f, -0.682266f, 0.619529f, -0.482045f, -0.619529f, 0.500000f, 0.250000f, - 0.886465f, -0.448242f, -0.377168f, 0.809804f, -0.479966f, -0.337418f, 0.750000f, 0.250000f, - 0.960938f, -0.448242f, -0.000000f, 0.876976f, -0.480535f, 0.000000f, 1.000000f, 0.250000f, - 0.807187f, -0.557812f, -0.343437f, 0.644908f, -0.715463f, -0.268712f, 0.750000f, 0.500000f, - 0.831250f, -0.300000f, -0.562500f, 0.830544f, 0.000000f, -0.556953f, 0.625000f, 0.000000f, - 0.702373f, -0.379175f, -0.702373f, 0.681256f, -0.267921f, -0.681256f, 0.500000f, 0.125000f, - 0.822320f, -0.379175f, -0.556458f, 0.800256f, -0.267590f, -0.536643f, 0.625000f, 0.125000f, - 0.912590f, -0.379175f, -0.388284f, 0.889431f, -0.267526f, -0.370597f, 0.750000f, 0.125000f, - 0.798779f, -0.448242f, -0.540527f, 0.727903f, -0.481553f, -0.488123f, 0.625000f, 0.250000f, - 0.980000f, -0.300000f, -0.203750f, 0.980581f, 0.000000f, -0.196116f, 0.875000f, 0.000000f, - 0.912590f, -0.379175f, -0.388284f, 0.889432f, -0.267526f, -0.370596f, 0.750000f, 0.125000f, - 0.969473f, -0.379175f, -0.201561f, 0.945014f, -0.266885f, -0.189003f, 0.875000f, 0.125000f, - 0.989258f, -0.379175f, -0.000000f, 0.963722f, -0.266906f, 0.000000f, 1.000000f, 0.125000f, - 0.941719f, -0.448242f, -0.195791f, 0.859963f, -0.480502f, -0.171993f, 0.875000f, 0.250000f, - 0.798779f, -0.448242f, -0.540527f, 0.727903f, -0.481553f, -0.488123f, 0.625000f, 0.250000f, - 0.653838f, -0.507642f, -0.653838f, 0.550409f, -0.627775f, -0.550409f, 0.500000f, 0.375000f, - 0.765497f, -0.507642f, -0.518005f, 0.646829f, -0.627270f, -0.433756f, 0.625000f, 0.375000f, - 0.849529f, -0.507642f, -0.361453f, 0.718967f, -0.627172f, -0.299570f, 0.750000f, 0.375000f, - 0.727344f, -0.557812f, -0.492188f, 0.578983f, -0.716961f, -0.388259f, 0.625000f, 0.500000f, - 0.941719f, -0.448242f, -0.195791f, 0.859963f, -0.480502f, -0.171993f, 0.875000f, 0.250000f, - 0.849529f, -0.507642f, -0.361453f, 0.718967f, -0.627172f, -0.299570f, 0.750000f, 0.375000f, - 0.902480f, -0.507642f, -0.187633f, 0.764532f, -0.626188f, -0.152906f, 0.875000f, 0.375000f, - 0.920898f, -0.507642f, -0.000000f, 0.779645f, -0.626221f, 0.000000f, 1.000000f, 0.375000f, - 0.857500f, -0.557812f, -0.178281f, 0.684574f, -0.715970f, -0.136915f, 0.875000f, 0.500000f, - 0.343437f, -0.557812f, -0.807187f, 0.268606f, -0.715731f, -0.644654f, 0.250000f, 0.500000f, - 0.000000f, -0.632227f, -0.789062f, 0.000000f, -0.771373f, -0.636383f, 0.000000f, 0.750000f, - 0.309707f, -0.632227f, -0.727910f, 0.244875f, -0.771133f, -0.587700f, 0.250000f, 0.750000f, - 0.560234f, -0.632227f, -0.560234f, 0.448897f, -0.772647f, -0.448897f, 0.500000f, 0.750000f, - 0.294375f, -0.675000f, -0.691875f, 0.384615f, 0.000000f, -0.923077f, 0.250000f, 1.000000f, - 0.178281f, -0.557812f, -0.857500f, 0.136905f, -0.716018f, -0.684525f, 0.125000f, 0.500000f, - 0.000000f, -0.599194f, -0.829102f, 0.000000f, -0.763821f, -0.645429f, 0.000000f, 0.625000f, - 0.168929f, -0.599194f, -0.812519f, 0.126575f, -0.763837f, -0.632876f, 0.125000f, 0.625000f, - 0.325422f, -0.599194f, -0.764846f, 0.247880f, -0.764614f, -0.594912f, 0.250000f, 0.625000f, - 0.160771f, -0.632227f, -0.773281f, 0.124801f, -0.771390f, -0.624005f, 0.125000f, 0.750000f, - 0.492188f, -0.557812f, -0.727344f, 0.388249f, -0.716978f, -0.578969f, 0.375000f, 0.500000f, - 0.325422f, -0.599194f, -0.764846f, 0.247880f, -0.764614f, -0.594912f, 0.250000f, 0.625000f, - 0.466370f, -0.599194f, -0.689191f, 0.358885f, -0.764712f, -0.535179f, 0.375000f, 0.625000f, - 0.588662f, -0.599194f, -0.588662f, 0.455299f, -0.765118f, -0.455299f, 0.500000f, 0.625000f, - 0.443848f, -0.632227f, -0.655908f, 0.353844f, -0.772248f, -0.527662f, 0.375000f, 0.750000f, - 0.160771f, -0.632227f, -0.773281f, 0.124801f, -0.771390f, -0.624005f, 0.125000f, 0.750000f, - 0.000000f, -0.657349f, -0.760742f, 0.000000f, -0.693356f, -0.720596f, 0.000000f, 0.875000f, - 0.155001f, -0.657349f, -0.745527f, 0.141317f, -0.693375f, -0.706584f, 0.125000f, 0.875000f, - 0.298591f, -0.657349f, -0.701785f, 0.276819f, -0.694254f, -0.664366f, 0.250000f, 0.875000f, - 0.152812f, -0.675000f, -0.735000f, 0.196116f, 0.000000f, -0.980581f, 0.125000f, 1.000000f, - 0.443848f, -0.632227f, -0.655908f, 0.353844f, -0.772249f, -0.527662f, 0.375000f, 0.750000f, - 0.298591f, -0.657349f, -0.701785f, 0.276819f, -0.694254f, -0.664366f, 0.250000f, 0.875000f, - 0.427917f, -0.657349f, -0.632367f, 0.400796f, -0.694365f, -0.597679f, 0.375000f, 0.875000f, - 0.540127f, -0.657349f, -0.540127f, 0.508536f, -0.694825f, -0.508537f, 0.500000f, 0.875000f, - 0.421875f, -0.675000f, -0.623438f, 0.556953f, 0.000000f, -0.830544f, 0.375000f, 1.000000f, - 0.807187f, -0.557812f, -0.343437f, 0.644909f, -0.715463f, -0.268712f, 0.750000f, 0.500000f, - 0.560234f, -0.632227f, -0.560234f, 0.448897f, -0.772647f, -0.448897f, 0.500000f, 0.750000f, - 0.727910f, -0.632227f, -0.309707f, 0.587969f, -0.770892f, -0.244987f, 0.750000f, 0.750000f, - 0.789062f, -0.632227f, -0.000000f, 0.636383f, -0.771373f, 0.000000f, 1.000000f, 0.750000f, - 0.691875f, -0.675000f, -0.294375f, 0.923077f, 0.000000f, -0.384615f, 0.750000f, 1.000000f, - 0.727344f, -0.557812f, -0.492188f, 0.578983f, -0.716961f, -0.388259f, 0.625000f, 0.500000f, - 0.588662f, -0.599194f, -0.588662f, 0.455299f, -0.765118f, -0.455299f, 0.500000f, 0.625000f, - 0.689191f, -0.599194f, -0.466370f, 0.535195f, -0.764697f, -0.358895f, 0.625000f, 0.625000f, - 0.764846f, -0.599194f, -0.325422f, 0.594912f, -0.764614f, -0.247880f, 0.750000f, 0.625000f, - 0.655908f, -0.632227f, -0.443848f, 0.527677f, -0.772233f, -0.353854f, 0.625000f, 0.750000f, - 0.857500f, -0.557812f, -0.178281f, 0.684575f, -0.715969f, -0.136915f, 0.875000f, 0.500000f, - 0.764846f, -0.599194f, -0.325422f, 0.594912f, -0.764614f, -0.247880f, 0.750000f, 0.625000f, - 0.812519f, -0.599194f, -0.168929f, 0.632927f, -0.763793f, -0.126585f, 0.875000f, 0.625000f, - 0.829102f, -0.599194f, -0.000000f, 0.645429f, -0.763821f, 0.000000f, 1.000000f, 0.625000f, - 0.773281f, -0.632227f, -0.160771f, 0.624057f, -0.771346f, -0.124811f, 0.875000f, 0.750000f, - 0.655908f, -0.632227f, -0.443848f, 0.527677f, -0.772233f, -0.353854f, 0.625000f, 0.750000f, - 0.540127f, -0.657349f, -0.540127f, 0.508537f, -0.694825f, -0.508536f, 0.500000f, 0.875000f, - 0.632367f, -0.657349f, -0.427917f, 0.597693f, -0.694347f, -0.400806f, 0.625000f, 0.875000f, - 0.701785f, -0.657349f, -0.298591f, 0.664366f, -0.694254f, -0.276819f, 0.750000f, 0.875000f, - 0.623438f, -0.675000f, -0.421875f, 0.830544f, 0.000000f, -0.556953f, 0.625000f, 1.000000f, - 0.773281f, -0.632227f, -0.160771f, 0.624057f, -0.771346f, -0.124811f, 0.875000f, 0.750000f, - 0.701785f, -0.657349f, -0.298591f, 0.664366f, -0.694254f, -0.276819f, 0.750000f, 0.875000f, - 0.745527f, -0.657349f, -0.155001f, 0.706632f, -0.693324f, -0.141326f, 0.875000f, 0.875000f, - 0.760742f, -0.657349f, -0.000000f, 0.720596f, -0.693356f, 0.000000f, 1.000000f, 0.875000f, - 0.735000f, -0.675000f, -0.152812f, 0.980581f, 0.000000f, -0.196116f, 0.875000f, 1.000000f, - -0.800000f, 0.262500f, -0.000000f, 0.000000f, -1.000000f, 0.000000f, 0.000000f, 0.000000f, - -0.750000f, 0.375000f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, 0.000000f, - -1.350000f, 0.150000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 0.000000f, 1.000000f, - -1.500000f, 0.150000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 1.000000f, 1.000000f, - -0.775000f, 0.318750f, 0.112500f, 0.000000f, -0.000000f, 1.000000f, 0.500000f, 0.000000f, - -1.206250f, 0.248438f, -0.000000f, 0.148341f, -0.988936f, 0.000000f, 0.000000f, 0.500000f, - -1.259375f, 0.297656f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.500000f, - -1.312500f, 0.346875f, -0.000000f, -0.219512f, 0.975610f, 0.000000f, 1.000000f, 0.500000f, - -1.425000f, 0.150000f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 1.000000f, - -0.792188f, 0.280078f, 0.084375f, 0.000000f, -0.871576f, 0.490261f, 0.250000f, 0.000000f, - -1.033594f, 0.260742f, -0.000000f, 0.025853f, -0.999666f, 0.000000f, 0.000000f, 0.250000f, - -1.040552f, 0.278046f, 0.084375f, 0.024475f, -0.872955f, 0.487186f, 0.250000f, 0.250000f, - -1.055859f, 0.316113f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.250000f, - -1.222852f, 0.263818f, 0.084375f, 0.140206f, -0.856814f, 0.496198f, 0.250000f, 0.500000f, - -0.797852f, 0.267334f, 0.049219f, 0.000000f, -0.976900f, 0.213697f, 0.125000f, 0.000000f, - -0.924121f, 0.262280f, -0.000000f, 0.005639f, -0.999984f, 0.000000f, 0.000000f, 0.125000f, - -0.924192f, 0.267105f, 0.049219f, 0.005639f, -0.976986f, 0.213230f, 0.125000f, 0.125000f, - -0.924381f, 0.279824f, 0.084375f, 0.005349f, -0.872040f, 0.489406f, 0.250000f, 0.125000f, - -1.035507f, 0.265501f, 0.049219f, 0.025883f, -0.976801f, 0.212578f, 0.125000f, 0.250000f, - -0.784180f, 0.298096f, 0.105469f, 0.000000f, -0.579524f, 0.814955f, 0.375000f, 0.000000f, - -0.924381f, 0.279824f, 0.084375f, 0.005349f, -0.872040f, 0.489406f, 0.250000f, 0.125000f, - -0.924646f, 0.297807f, 0.105469f, 0.003808f, -0.580397f, 0.814324f, 0.375000f, 0.125000f, - -0.924951f, 0.318420f, 0.112500f, 0.000000f, -0.000000f, 1.000000f, 0.500000f, 0.125000f, - -1.047684f, 0.295782f, 0.105469f, 0.017593f, -0.580836f, 0.813830f, 0.375000f, 0.250000f, - -1.035507f, 0.265501f, 0.049219f, 0.025883f, -0.976801f, 0.212578f, 0.125000f, 0.250000f, - -1.127832f, 0.256567f, -0.000000f, 0.068483f, -0.997652f, 0.000000f, 0.000000f, 0.375000f, - -1.131235f, 0.261146f, 0.049219f, 0.068616f, -0.974722f, 0.212623f, 0.125000f, 0.375000f, - -1.140207f, 0.273219f, 0.084375f, 0.065384f, -0.869606f, 0.489398f, 0.250000f, 0.375000f, - -1.210815f, 0.252667f, 0.049219f, 0.148598f, -0.965146f, 0.215435f, 0.125000f, 0.500000f, - -1.047684f, 0.295782f, 0.105469f, 0.017593f, -0.580836f, 0.813830f, 0.375000f, 0.250000f, - -1.140207f, 0.273219f, 0.084375f, 0.065384f, -0.869606f, 0.489398f, 0.250000f, 0.375000f, - -1.152891f, 0.290286f, 0.105469f, 0.046704f, -0.577184f, 0.815278f, 0.375000f, 0.375000f, - -1.167432f, 0.309851f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.375000f, - -1.239868f, 0.279584f, 0.105469f, 0.099732f, -0.560496f, 0.822130f, 0.375000f, 0.500000f, - -0.757812f, 0.357422f, 0.084375f, 0.000000f, 0.871576f, 0.490261f, 0.750000f, 0.000000f, - -1.055859f, 0.316113f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.250000f, - -1.071167f, 0.354181f, 0.084375f, -0.031326f, 0.872200f, 0.488145f, 0.750000f, 0.250000f, - -1.078125f, 0.371484f, -0.000000f, -0.037474f, 0.999298f, 0.000000f, 1.000000f, 0.250000f, - -1.295898f, 0.331494f, 0.084375f, -0.180412f, 0.841138f, 0.509842f, 0.750000f, 0.500000f, - -0.765820f, 0.339404f, 0.105469f, 0.000000f, 0.579524f, 0.814955f, 0.625000f, 0.000000f, - -0.924951f, 0.318420f, 0.112500f, 0.000000f, -0.000000f, 1.000000f, 0.500000f, 0.125000f, - -0.925256f, 0.339034f, 0.105469f, -0.004308f, 0.580398f, 0.814321f, 0.625000f, 0.125000f, - -0.925522f, 0.357017f, 0.084375f, -0.006764f, 0.872035f, 0.489397f, 0.750000f, 0.125000f, - -1.064035f, 0.336445f, 0.105469f, -0.020004f, 0.580169f, 0.814250f, 0.625000f, 0.250000f, - -0.752148f, 0.370166f, 0.049219f, 0.000000f, 0.976900f, 0.213697f, 0.875000f, 0.000000f, - -0.925522f, 0.357017f, 0.084375f, -0.006764f, 0.872035f, 0.489398f, 0.750000f, 0.125000f, - -0.925710f, 0.369736f, 0.049219f, -0.007768f, 0.976972f, 0.213224f, 0.875000f, 0.125000f, - -0.925781f, 0.374561f, -0.000000f, -0.008035f, 0.999968f, 0.000000f, 1.000000f, 0.125000f, - -1.076211f, 0.366726f, 0.049219f, -0.036201f, 0.976302f, 0.213364f, 0.875000f, 0.250000f, - -1.064035f, 0.336445f, 0.105469f, -0.020004f, 0.580169f, 0.814250f, 0.625000f, 0.250000f, - -1.167432f, 0.309851f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.375000f, - -1.181972f, 0.329416f, 0.105469f, -0.053190f, 0.573905f, 0.817192f, 0.625000f, 0.375000f, - -1.194656f, 0.346484f, 0.084375f, -0.084210f, 0.865181f, 0.494338f, 0.750000f, 0.375000f, - -1.278882f, 0.315729f, 0.105469f, -0.112865f, 0.550447f, 0.827206f, 0.625000f, 0.500000f, - -1.076211f, 0.366726f, 0.049219f, -0.036201f, 0.976302f, 0.213364f, 0.875000f, 0.250000f, - -1.194656f, 0.346484f, 0.084375f, -0.084210f, 0.865181f, 0.494339f, 0.750000f, 0.375000f, - -1.203628f, 0.358556f, 0.049219f, -0.097201f, 0.971485f, 0.216262f, 0.875000f, 0.375000f, - -1.207031f, 0.363135f, -0.000000f, -0.100735f, 0.994913f, 0.000000f, 1.000000f, 0.375000f, - -1.307935f, 0.342645f, 0.049219f, -0.211316f, 0.951005f, 0.225686f, 0.875000f, 0.500000f, - -1.222852f, 0.263818f, 0.084375f, 0.140206f, -0.856814f, 0.496198f, 0.250000f, 0.500000f, - -1.313281f, 0.215039f, -0.000000f, 0.546885f, -0.837207f, 0.000000f, 0.000000f, 0.750000f, - -1.335132f, 0.225201f, 0.084375f, 0.483435f, -0.674422f, 0.558073f, 0.250000f, 0.750000f, - -1.383203f, 0.247559f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.750000f, - -1.373438f, 0.150000f, 0.084375f, 0.800000f, 0.000000f, 0.600000f, 0.250000f, 1.000000f, - -1.210815f, 0.252667f, 0.049219f, 0.148598f, -0.965146f, 0.215435f, 0.125000f, 0.500000f, - -1.268262f, 0.235034f, -0.000000f, 0.293811f, -0.955864f, 0.000000f, 0.000000f, 0.625000f, - -1.273687f, 0.238688f, 0.049219f, 0.293318f, -0.928882f, 0.226146f, 0.125000f, 0.625000f, - -1.287991f, 0.248321f, 0.084375f, 0.274428f, -0.809737f, 0.518667f, 0.250000f, 0.625000f, - -1.319290f, 0.217834f, 0.049219f, 0.540058f, -0.804093f, 0.248541f, 0.125000f, 0.750000f, - -1.239868f, 0.279584f, 0.105469f, 0.099732f, -0.560497f, 0.822130f, 0.375000f, 0.500000f, - -1.287991f, 0.248321f, 0.084375f, 0.274428f, -0.809736f, 0.518669f, 0.250000f, 0.625000f, - -1.308214f, 0.261940f, 0.105469f, 0.187187f, -0.510240f, 0.839414f, 0.375000f, 0.625000f, - -1.331396f, 0.277551f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.625000f, - -1.357529f, 0.235618f, 0.105469f, 0.310389f, -0.395752f, 0.864314f, 0.375000f, 0.750000f, - -1.319290f, 0.217834f, 0.049219f, 0.540058f, -0.804093f, 0.248541f, 0.125000f, 0.750000f, - -1.340723f, 0.187134f, -0.000000f, 0.868244f, -0.496138f, 0.000000f, 0.000000f, 0.875000f, - -1.347063f, 0.188729f, 0.049219f, 0.840433f, -0.466702f, 0.275432f, 0.125000f, 0.875000f, - -1.363779f, 0.192936f, 0.084375f, 0.713833f, -0.367656f, 0.596046f, 0.250000f, 0.875000f, - -1.356445f, 0.150000f, 0.049219f, 0.960000f, 0.000000f, 0.280000f, 0.125000f, 1.000000f, - -1.357529f, 0.235618f, 0.105469f, 0.310389f, -0.395752f, 0.864314f, 0.375000f, 0.750000f, - -1.363779f, 0.192936f, 0.084375f, 0.713834f, -0.367656f, 0.596045f, 0.250000f, 0.875000f, - -1.387411f, 0.198883f, 0.105469f, 0.426484f, -0.201800f, 0.881696f, 0.375000f, 0.875000f, - -1.414502f, 0.205701f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.875000f, - -1.397461f, 0.150000f, 0.105469f, 0.470589f, 0.000000f, 0.882353f, 0.375000f, 1.000000f, - -1.295898f, 0.331494f, 0.084375f, -0.180412f, 0.841138f, 0.509842f, 0.750000f, 0.500000f, - -1.383203f, 0.247559f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.750000f, - -1.431274f, 0.269916f, 0.084375f, -0.562646f, 0.585663f, 0.583462f, 0.750000f, 0.750000f, - -1.453125f, 0.280078f, -0.000000f, -0.711485f, 0.702701f, 0.000000f, 1.000000f, 0.750000f, - -1.476562f, 0.150000f, 0.084375f, -0.800000f, 0.000000f, 0.600000f, 0.750000f, 1.000000f, - -1.278882f, 0.315729f, 0.105469f, -0.112865f, 0.550447f, 0.827206f, 0.625000f, 0.500000f, - -1.331396f, 0.277551f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.625000f, - -1.354579f, 0.293163f, 0.105469f, -0.207595f, 0.488130f, 0.847722f, 0.625000f, 0.625000f, - -1.374802f, 0.306782f, 0.084375f, -0.343732f, 0.765920f, 0.543338f, 0.750000f, 0.625000f, - -1.408878f, 0.259499f, 0.105469f, -0.330606f, 0.361483f, 0.871797f, 0.625000f, 0.750000f, - -1.307935f, 0.342645f, 0.049219f, -0.211317f, 0.951005f, 0.225686f, 0.875000f, 0.500000f, - -1.374802f, 0.306782f, 0.084375f, -0.343732f, 0.765919f, 0.543338f, 0.750000f, 0.625000f, - -1.389106f, 0.316415f, 0.049219f, -0.407011f, 0.879764f, 0.245675f, 0.875000f, 0.625000f, - -1.394531f, 0.320068f, -0.000000f, -0.424434f, 0.905459f, 0.000000f, 1.000000f, 0.625000f, - -1.447116f, 0.277283f, 0.049219f, -0.680178f, 0.681081f, 0.271085f, 0.875000f, 0.750000f, - -1.408878f, 0.259499f, 0.105469f, -0.330606f, 0.361483f, 0.871797f, 0.625000f, 0.750000f, - -1.414502f, 0.205701f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.875000f, - -1.441593f, 0.212518f, 0.105469f, -0.434397f, 0.175246f, 0.883509f, 0.625000f, 0.875000f, - -1.465225f, 0.218465f, 0.084375f, -0.745462f, 0.283642f, 0.603187f, 0.750000f, 0.875000f, - -1.452539f, 0.150000f, 0.105469f, -0.470588f, 0.000000f, 0.882353f, 0.625000f, 1.000000f, - -1.447116f, 0.277283f, 0.049219f, -0.680178f, 0.681081f, 0.271085f, 0.875000f, 0.750000f, - -1.465225f, 0.218465f, 0.084375f, -0.745462f, 0.283642f, 0.603187f, 0.750000f, 0.875000f, - -1.481941f, 0.222672f, 0.049219f, -0.900243f, 0.331346f, 0.282440f, 0.875000f, 0.875000f, - -1.488281f, 0.224268f, -0.000000f, -0.940042f, 0.341058f, 0.000000f, 1.000000f, 0.875000f, - -1.493555f, 0.150000f, 0.049219f, -0.960000f, 0.000000f, 0.280000f, 0.875000f, 1.000000f, - -0.750000f, 0.375000f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 0.000000f, 0.000000f, - -0.800000f, 0.262500f, -0.000000f, 0.000000f, -1.000000f, 0.000000f, 1.000000f, 0.000000f, - -1.500000f, 0.150000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 0.000000f, 1.000000f, - -1.350000f, 0.150000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 1.000000f, 1.000000f, - -0.775000f, 0.318750f, -0.112500f, -0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.000000f, - -1.312500f, 0.346875f, -0.000000f, -0.219512f, 0.975610f, 0.000000f, 0.000000f, 0.500000f, - -1.259375f, 0.297656f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.500000f, - -1.206250f, 0.248438f, -0.000000f, 0.148341f, -0.988936f, 0.000000f, 1.000000f, 0.500000f, - -1.425000f, 0.150000f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 1.000000f, - -0.757812f, 0.357422f, -0.084375f, 0.000000f, 0.871576f, -0.490261f, 0.250000f, 0.000000f, - -1.078125f, 0.371484f, -0.000000f, -0.037474f, 0.999298f, 0.000000f, 0.000000f, 0.250000f, - -1.071167f, 0.354181f, -0.084375f, -0.031612f, 0.872168f, -0.488184f, 0.250000f, 0.250000f, - -1.055859f, 0.316113f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.250000f, - -1.295898f, 0.331494f, -0.084375f, -0.182095f, 0.840441f, -0.510393f, 0.250000f, 0.500000f, - -0.752148f, 0.370166f, -0.049219f, 0.000000f, 0.976900f, -0.213697f, 0.125000f, 0.000000f, - -0.925781f, 0.374561f, -0.000000f, -0.008035f, 0.999968f, 0.000000f, 0.000000f, 0.125000f, - -0.925710f, 0.369736f, -0.049219f, -0.007783f, 0.976972f, -0.213224f, 0.125000f, 0.125000f, - -0.925522f, 0.357017f, -0.084375f, -0.006764f, 0.872035f, -0.489398f, 0.250000f, 0.125000f, - -1.076211f, 0.366726f, -0.049219f, -0.036277f, 0.976298f, -0.213369f, 0.125000f, 0.250000f, - -0.765820f, 0.339404f, -0.105469f, 0.000000f, 0.579524f, -0.814955f, 0.375000f, 0.000000f, - -0.925522f, 0.357017f, -0.084375f, -0.006764f, 0.872035f, -0.489397f, 0.250000f, 0.125000f, - -0.925256f, 0.339034f, -0.105469f, -0.004329f, 0.580399f, -0.814321f, 0.375000f, 0.125000f, - -0.924951f, 0.318420f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.125000f, - -1.064035f, 0.336445f, -0.105469f, -0.020108f, 0.580140f, -0.814268f, 0.375000f, 0.250000f, - -1.076211f, 0.366726f, -0.049219f, -0.036277f, 0.976298f, -0.213369f, 0.125000f, 0.250000f, - -1.207031f, 0.363135f, -0.000000f, -0.100735f, 0.994913f, 0.000000f, 0.000000f, 0.375000f, - -1.203628f, 0.358556f, -0.049219f, -0.097411f, 0.971458f, -0.216288f, 0.125000f, 0.375000f, - -1.194656f, 0.346484f, -0.084375f, -0.084210f, 0.865181f, -0.494339f, 0.250000f, 0.375000f, - -1.307935f, 0.342645f, -0.049219f, -0.211778f, 0.950885f, -0.225758f, 0.125000f, 0.500000f, - -1.064035f, 0.336445f, -0.105469f, -0.020108f, 0.580141f, -0.814268f, 0.375000f, 0.250000f, - -1.194656f, 0.346484f, -0.084375f, -0.084210f, 0.865181f, -0.494338f, 0.250000f, 0.375000f, - -1.181972f, 0.329416f, -0.105469f, -0.053470f, 0.573763f, -0.817274f, 0.375000f, 0.375000f, - -1.167432f, 0.309851f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.375000f, - -1.278882f, 0.315729f, -0.105469f, -0.113428f, 0.550012f, -0.827418f, 0.375000f, 0.500000f, - -0.792188f, 0.280078f, -0.084375f, -0.000000f, -0.871576f, -0.490261f, 0.750000f, 0.000000f, - -1.055859f, 0.316113f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.250000f, - -1.040552f, 0.278046f, -0.084375f, 0.024919f, -0.872908f, -0.487248f, 0.750000f, 0.250000f, - -1.033594f, 0.260742f, -0.000000f, 0.025853f, -0.999666f, 0.000000f, 1.000000f, 0.250000f, - -1.222852f, 0.263818f, -0.084375f, 0.142803f, -0.855858f, -0.497107f, 0.750000f, 0.500000f, - -0.784180f, 0.298096f, -0.105469f, -0.000000f, -0.579524f, -0.814955f, 0.625000f, 0.000000f, - -0.924951f, 0.318420f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.125000f, - -0.924646f, 0.297807f, -0.105469f, 0.003835f, -0.580398f, -0.814324f, 0.625000f, 0.125000f, - -0.924381f, 0.279824f, -0.084375f, 0.005349f, -0.872040f, -0.489406f, 0.750000f, 0.125000f, - -1.047684f, 0.295782f, -0.105469f, 0.017725f, -0.580800f, -0.813853f, 0.625000f, 0.250000f, - -0.797852f, 0.267334f, -0.049219f, -0.000000f, -0.976900f, -0.213697f, 0.875000f, 0.000000f, - -0.924381f, 0.279824f, -0.084375f, 0.005349f, -0.872040f, -0.489406f, 0.750000f, 0.125000f, - -0.924192f, 0.267105f, -0.049219f, 0.005668f, -0.976986f, -0.213230f, 0.875000f, 0.125000f, - -0.924121f, 0.262280f, -0.000000f, 0.005639f, -0.999984f, 0.000000f, 1.000000f, 0.125000f, - -1.035507f, 0.265501f, -0.049219f, 0.026018f, -0.976795f, -0.212588f, 0.875000f, 0.250000f, - -1.047684f, 0.295782f, -0.105469f, 0.017725f, -0.580800f, -0.813853f, 0.625000f, 0.250000f, - -1.167432f, 0.309851f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.375000f, - -1.152891f, 0.290286f, -0.105469f, 0.047058f, -0.577006f, -0.815383f, 0.625000f, 0.375000f, - -1.140207f, 0.273219f, -0.084375f, 0.065384f, -0.869606f, -0.489398f, 0.750000f, 0.375000f, - -1.239868f, 0.279584f, -0.105469f, 0.100453f, -0.559950f, -0.822414f, 0.625000f, 0.500000f, - -1.035507f, 0.265501f, -0.049219f, 0.026018f, -0.976795f, -0.212588f, 0.875000f, 0.250000f, - -1.140207f, 0.273219f, -0.084375f, 0.065384f, -0.869606f, -0.489398f, 0.750000f, 0.375000f, - -1.131235f, 0.261146f, -0.049219f, 0.068986f, -0.974686f, -0.212671f, 0.875000f, 0.375000f, - -1.127832f, 0.256567f, -0.000000f, 0.068483f, -0.997652f, 0.000000f, 1.000000f, 0.375000f, - -1.210815f, 0.252667f, -0.049219f, 0.149411f, -0.964989f, -0.215573f, 0.875000f, 0.500000f, - -1.295898f, 0.331494f, -0.084375f, -0.182096f, 0.840441f, -0.510393f, 0.250000f, 0.500000f, - -1.453125f, 0.280078f, -0.000000f, -0.711485f, 0.702701f, 0.000000f, 0.000000f, 0.750000f, - -1.431274f, 0.269916f, -0.084375f, -0.565483f, 0.582130f, -0.584255f, 0.250000f, 0.750000f, - -1.383203f, 0.247559f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.750000f, - -1.476562f, 0.150000f, -0.084375f, -0.800000f, -0.000000f, -0.600000f, 0.250000f, 1.000000f, - -1.307935f, 0.342645f, -0.049219f, -0.211779f, 0.950885f, -0.225758f, 0.125000f, 0.500000f, - -1.394531f, 0.320068f, -0.000000f, -0.424434f, 0.905459f, 0.000000f, 0.000000f, 0.625000f, - -1.389106f, 0.316415f, -0.049219f, -0.407810f, 0.879359f, -0.245803f, 0.125000f, 0.625000f, - -1.374802f, 0.306782f, -0.084375f, -0.343732f, 0.765919f, -0.543338f, 0.250000f, 0.625000f, - -1.447116f, 0.277283f, -0.049219f, -0.681018f, 0.680194f, -0.271202f, 0.125000f, 0.750000f, - -1.278882f, 0.315729f, -0.105469f, -0.113428f, 0.550012f, -0.827418f, 0.375000f, 0.500000f, - -1.374802f, 0.306782f, -0.084375f, -0.343732f, 0.765920f, -0.543338f, 0.250000f, 0.625000f, - -1.354579f, 0.293163f, -0.105469f, -0.208448f, 0.487192f, -0.848053f, 0.375000f, 0.625000f, - -1.331396f, 0.277551f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.625000f, - -1.408878f, 0.259499f, -0.105469f, -0.331408f, 0.360091f, -0.872068f, 0.375000f, 0.750000f, - -1.447116f, 0.277283f, -0.049219f, -0.681018f, 0.680194f, -0.271202f, 0.125000f, 0.750000f, - -1.488281f, 0.224268f, -0.000000f, -0.940042f, 0.341058f, 0.000000f, 0.000000f, 0.875000f, - -1.481941f, 0.222672f, -0.049219f, -0.900521f, 0.330571f, -0.282462f, 0.125000f, 0.875000f, - -1.465225f, 0.218465f, -0.084375f, -0.745462f, 0.283642f, -0.603187f, 0.250000f, 0.875000f, - -1.493555f, 0.150000f, -0.049219f, -0.960000f, -0.000000f, -0.280000f, 0.125000f, 1.000000f, - -1.408878f, 0.259499f, -0.105469f, -0.331408f, 0.360091f, -0.872068f, 0.375000f, 0.750000f, - -1.465225f, 0.218465f, -0.084375f, -0.745462f, 0.283642f, -0.603187f, 0.250000f, 0.875000f, - -1.441593f, 0.212518f, -0.105469f, -0.434695f, 0.174222f, -0.883565f, 0.375000f, 0.875000f, - -1.414502f, 0.205701f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.875000f, - -1.452539f, 0.150000f, -0.105469f, -0.470588f, -0.000000f, -0.882353f, 0.375000f, 1.000000f, - -1.222852f, 0.263818f, -0.084375f, 0.142803f, -0.855858f, -0.497107f, 0.750000f, 0.500000f, - -1.383203f, 0.247559f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.750000f, - -1.335132f, 0.225201f, -0.084375f, 0.489273f, -0.668472f, -0.560140f, 0.750000f, 0.750000f, - -1.313281f, 0.215039f, -0.000000f, 0.546885f, -0.837207f, 0.000000f, 1.000000f, 0.750000f, - -1.373438f, 0.150000f, -0.084375f, 0.800000f, 0.000000f, -0.600000f, 0.750000f, 1.000000f, - -1.239868f, 0.279584f, -0.105469f, 0.100453f, -0.559950f, -0.822414f, 0.625000f, 0.500000f, - -1.331396f, 0.277551f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.625000f, - -1.308214f, 0.261940f, -0.105469f, 0.188332f, -0.509017f, -0.839900f, 0.625000f, 0.625000f, - -1.287991f, 0.248321f, -0.084375f, 0.274428f, -0.809736f, -0.518669f, 0.750000f, 0.625000f, - -1.357529f, 0.235618f, -0.105469f, 0.311577f, -0.393781f, -0.864787f, 0.625000f, 0.750000f, - -1.210815f, 0.252667f, -0.049219f, 0.149411f, -0.964989f, -0.215573f, 0.875000f, 0.500000f, - -1.287991f, 0.248321f, -0.084375f, 0.274428f, -0.809737f, -0.518667f, 0.750000f, 0.625000f, - -1.273687f, 0.238688f, -0.049219f, 0.294850f, -0.928329f, -0.226427f, 0.875000f, 0.625000f, - -1.268262f, 0.235034f, -0.000000f, 0.293811f, -0.955864f, 0.000000f, 1.000000f, 0.625000f, - -1.319290f, 0.217834f, -0.049219f, 0.542231f, -0.802508f, -0.248931f, 0.875000f, 0.750000f, - -1.357529f, 0.235618f, -0.105469f, 0.311577f, -0.393780f, -0.864787f, 0.625000f, 0.750000f, - -1.414502f, 0.205701f, -0.112500f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 0.875000f, - -1.387411f, 0.198883f, -0.105469f, 0.426972f, -0.200197f, -0.881825f, 0.625000f, 0.875000f, - -1.363779f, 0.192936f, -0.084375f, 0.713834f, -0.367656f, -0.596045f, 0.750000f, 0.875000f, - -1.397461f, 0.150000f, -0.105469f, 0.470589f, 0.000000f, -0.882353f, 0.625000f, 1.000000f, - -1.319290f, 0.217834f, -0.049219f, 0.542231f, -0.802508f, -0.248931f, 0.875000f, 0.750000f, - -1.363779f, 0.192936f, -0.084375f, 0.713833f, -0.367656f, -0.596046f, 0.750000f, 0.875000f, - -1.347063f, 0.188729f, -0.049219f, 0.841606f, -0.464481f, -0.275602f, 0.875000f, 0.875000f, - -1.340723f, 0.187134f, -0.000000f, 0.868244f, -0.496138f, 0.000000f, 1.000000f, 0.875000f, - -1.356445f, 0.150000f, -0.049219f, 0.960000f, 0.000000f, -0.280000f, 0.875000f, 1.000000f, - -1.350000f, 0.150000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 0.000000f, 0.000000f, - -1.500000f, 0.150000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 1.000000f, 0.000000f, - -1.000000f, -0.300000f, -0.000000f, 0.410365f, 0.911922f, -0.000000f, 0.000000f, 1.000000f, - -0.950000f, -0.450000f, -0.000000f, -0.410365f, -0.911922f, -0.000000f, 1.000000f, 1.000000f, - -1.425000f, 0.150000f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.000000f, - -1.268750f, -0.075000f, -0.000000f, 0.832050f, 0.554700f, -0.000000f, 0.000000f, 0.500000f, - -1.317188f, -0.123047f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.500000f, - -1.365625f, -0.171094f, -0.000000f, -0.743581f, -0.668646f, -0.000000f, 1.000000f, 0.500000f, - -0.975000f, -0.375000f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 1.000000f, - -1.373438f, 0.150000f, 0.084375f, 0.800000f, 0.000000f, 0.600000f, 0.250000f, 0.000000f, - -1.330469f, 0.048047f, -0.000000f, 0.945778f, 0.324813f, -0.000000f, 0.000000f, 0.250000f, - -1.351770f, 0.038205f, 0.084375f, 0.754441f, 0.269277f, 0.598589f, 0.250000f, 0.250000f, - -1.398633f, 0.016553f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.250000f, - -1.283887f, -0.090015f, 0.084375f, 0.678042f, 0.478207f, 0.558191f, 0.250000f, 0.500000f, - -1.356445f, 0.150000f, 0.049219f, 0.960000f, 0.000000f, 0.280000f, 0.125000f, 0.000000f, - -1.345215f, 0.102979f, -0.000000f, 0.982777f, 0.184796f, -0.000000f, 0.000000f, 0.125000f, - -1.351511f, 0.101413f, 0.049219f, 0.943027f, 0.178069f, 0.281055f, 0.125000f, 0.125000f, - -1.368111f, 0.097285f, 0.084375f, 0.784625f, 0.149799f, 0.601602f, 0.250000f, 0.125000f, - -1.336327f, 0.045340f, 0.049219f, 0.907104f, 0.315107f, 0.279051f, 0.125000f, 0.250000f, - -1.397461f, 0.150000f, 0.105469f, 0.470589f, 0.000000f, 0.882353f, 0.375000f, 0.000000f, - -1.368111f, 0.097285f, 0.084375f, 0.784624f, 0.149799f, 0.601603f, 0.250000f, 0.125000f, - -1.391579f, 0.091449f, 0.105469f, 0.460503f, 0.089006f, 0.883184f, 0.375000f, 0.125000f, - -1.418481f, 0.084760f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.125000f, - -1.373604f, 0.028117f, 0.105469f, 0.441858f, 0.163868f, 0.881991f, 0.375000f, 0.250000f, - -1.336327f, 0.045340f, 0.049219f, 0.907105f, 0.315106f, 0.279051f, 0.125000f, 0.250000f, - -1.305176f, -0.012158f, -0.000000f, 0.895694f, 0.444671f, -0.000000f, 0.000000f, 0.375000f, - -1.310318f, -0.015685f, 0.049219f, 0.859856f, 0.433367f, 0.269890f, 0.125000f, 0.375000f, - -1.323875f, -0.024981f, 0.084375f, 0.717810f, 0.376810f, 0.585460f, 0.250000f, 0.375000f, - -1.272913f, -0.079129f, 0.049219f, 0.801010f, 0.542879f, 0.252321f, 0.125000f, 0.500000f, - -1.373604f, 0.028117f, 0.105469f, 0.441858f, 0.163868f, 0.881991f, 0.375000f, 0.250000f, - -1.323875f, -0.024981f, 0.084375f, 0.717810f, 0.376810f, 0.585460f, 0.250000f, 0.375000f, - -1.343043f, -0.038125f, 0.105469f, 0.423804f, 0.233330f, 0.875184f, 0.375000f, 0.375000f, - -1.365015f, -0.053192f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.375000f, - -1.299402f, -0.105405f, 0.105469f, 0.408072f, 0.304992f, 0.860498f, 0.375000f, 0.500000f, - -1.476562f, 0.150000f, 0.084375f, -0.800000f, 0.000000f, 0.600000f, 0.750000f, 0.000000f, - -1.398633f, 0.016553f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.250000f, - -1.445496f, -0.005099f, 0.084375f, -0.741739f, -0.300819f, 0.599442f, 0.750000f, 0.250000f, - -1.466797f, -0.014941f, -0.000000f, -0.923524f, -0.383540f, -0.000000f, 1.000000f, 0.250000f, - -1.350488f, -0.156079f, 0.084375f, -0.625724f, -0.540260f, 0.562662f, 0.750000f, 0.500000f, - -1.452539f, 0.150000f, 0.105469f, -0.470588f, 0.000000f, 0.882353f, 0.625000f, 0.000000f, - -1.418481f, 0.084760f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.125000f, - -1.445384f, 0.078070f, 0.105469f, -0.460057f, -0.090956f, 0.883218f, 0.625000f, 0.125000f, - -1.468852f, 0.072234f, 0.084375f, -0.783295f, -0.156125f, 0.601726f, 0.750000f, 0.125000f, - -1.423662f, 0.004988f, 0.105469f, -0.437541f, -0.173581f, 0.882285f, 0.625000f, 0.250000f, - -1.493555f, 0.150000f, 0.049219f, -0.960000f, 0.000000f, 0.280000f, 0.875000f, 0.000000f, - -1.468852f, 0.072234f, 0.084375f, -0.783295f, -0.156125f, 0.601726f, 0.750000f, 0.125000f, - -1.485452f, 0.068106f, 0.049219f, -0.940981f, -0.188412f, 0.281170f, 0.875000f, 0.125000f, - -1.491748f, 0.066541f, -0.000000f, -0.980463f, -0.196702f, -0.000000f, 1.000000f, 0.125000f, - -1.460939f, -0.012235f, 0.049219f, -0.887370f, -0.366235f, 0.280082f, 0.875000f, 0.250000f, - -1.423662f, 0.004988f, 0.105469f, -0.437541f, -0.173581f, 0.882285f, 0.625000f, 0.250000f, - -1.365015f, -0.053192f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.375000f, - -1.386987f, -0.068259f, 0.105469f, -0.412980f, -0.249957f, 0.875768f, 0.625000f, 0.375000f, - -1.406154f, -0.081403f, 0.084375f, -0.685340f, -0.430186f, 0.587579f, 0.750000f, 0.375000f, - -1.334973f, -0.140689f, 0.105469f, -0.389863f, -0.324451f, 0.861822f, 0.625000f, 0.500000f, - -1.460939f, -0.012235f, 0.049219f, -0.887370f, -0.366235f, 0.280082f, 0.875000f, 0.250000f, - -1.406154f, -0.081403f, 0.084375f, -0.685340f, -0.430186f, 0.587580f, 0.750000f, 0.375000f, - -1.419711f, -0.090700f, 0.049219f, -0.810168f, -0.519360f, 0.271832f, 0.875000f, 0.375000f, - -1.424854f, -0.094226f, -0.000000f, -0.839602f, -0.543202f, -0.000000f, 1.000000f, 0.375000f, - -1.361462f, -0.166965f, 0.049219f, -0.722234f, -0.642490f, 0.256095f, 0.875000f, 0.500000f, - -1.283887f, -0.090015f, 0.084375f, 0.678042f, 0.478207f, 0.558191f, 0.250000f, 0.500000f, - -1.160156f, -0.198047f, -0.000000f, 0.655687f, 0.755033f, -0.000000f, 0.000000f, 0.750000f, - -1.165466f, -0.216586f, 0.084375f, 0.553444f, 0.668090f, 0.497350f, 0.250000f, 0.750000f, - -1.177148f, -0.257373f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.750000f, - -0.992188f, -0.323438f, 0.084375f, 0.354770f, 0.788378f, 0.502591f, 0.250000f, 1.000000f, - -1.272913f, -0.079129f, 0.049219f, 0.801011f, 0.542878f, 0.252321f, 0.125000f, 0.500000f, - -1.220605f, -0.137842f, -0.000000f, 0.752687f, 0.658378f, -0.000000f, 0.000000f, 0.625000f, - -1.223536f, -0.142460f, 0.049219f, 0.726886f, 0.646097f, 0.232800f, 0.125000f, 0.625000f, - -1.231264f, -0.154636f, 0.084375f, 0.623037f, 0.578584f, 0.526370f, 0.250000f, 0.625000f, - -1.161617f, -0.203145f, 0.049219f, 0.635572f, 0.742022f, 0.213194f, 0.125000f, 0.750000f, - -1.299402f, -0.105405f, 0.105469f, 0.408072f, 0.304992f, 0.860498f, 0.375000f, 0.500000f, - -1.231264f, -0.154636f, 0.084375f, 0.623037f, 0.578584f, 0.526370f, 0.250000f, 0.625000f, - -1.242188f, -0.171850f, 0.105469f, 0.386230f, 0.377876f, 0.841449f, 0.375000f, 0.625000f, - -1.254712f, -0.191583f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.625000f, - -1.170909f, -0.235589f, 0.105469f, 0.355340f, 0.450452f, 0.819040f, 0.375000f, 0.750000f, - -1.161617f, -0.203145f, 0.049219f, 0.635572f, 0.742022f, 0.213194f, 0.125000f, 0.750000f, - -1.086816f, -0.252979f, -0.000000f, 0.540758f, 0.841178f, -0.000000f, 0.000000f, 0.875000f, - -1.086579f, -0.258651f, 0.049219f, 0.525642f, 0.825088f, 0.207198f, 0.125000f, 0.875000f, - -1.085954f, -0.273607f, 0.084375f, 0.462854f, 0.744576f, 0.481012f, 0.250000f, 0.875000f, - -0.997852f, -0.306445f, 0.049219f, 0.400263f, 0.889473f, 0.220515f, 0.125000f, 1.000000f, - -1.170909f, -0.235589f, 0.105469f, 0.355340f, 0.450452f, 0.819040f, 0.375000f, 0.750000f, - -1.085954f, -0.273607f, 0.084375f, 0.462854f, 0.744576f, 0.481012f, 0.250000f, 0.875000f, - -1.085071f, -0.294750f, 0.105469f, 0.302868f, 0.501527f, 0.810396f, 0.375000f, 0.875000f, - -1.084058f, -0.318988f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.875000f, - -0.984180f, -0.347461f, 0.105469f, 0.232611f, 0.516912f, 0.823829f, 0.375000f, 1.000000f, - -1.350488f, -0.156079f, 0.084375f, -0.625724f, -0.540260f, 0.562662f, 0.750000f, 0.500000f, - -1.177148f, -0.257373f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.750000f, - -1.188831f, -0.298160f, 0.084375f, -0.492641f, -0.706153f, 0.508579f, 0.750000f, 0.750000f, - -1.194141f, -0.316699f, -0.000000f, -0.558748f, -0.829337f, -0.000000f, 1.000000f, 0.750000f, - -0.957812f, -0.426562f, 0.084375f, -0.354770f, -0.788378f, 0.502591f, 0.750000f, 1.000000f, - -1.334973f, -0.140689f, 0.105469f, -0.389864f, -0.324451f, 0.861822f, 0.625000f, 0.500000f, - -1.254712f, -0.191583f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.625000f, - -1.267236f, -0.211316f, 0.105469f, -0.362855f, -0.394979f, 0.843995f, 0.625000f, 0.625000f, - -1.278160f, -0.228531f, 0.084375f, -0.558837f, -0.634504f, 0.533952f, 0.750000f, 0.625000f, - -1.183388f, -0.279157f, 0.105469f, -0.331427f, -0.460343f, 0.823553f, 0.625000f, 0.750000f, - -1.361462f, -0.166965f, 0.049219f, -0.722234f, -0.642490f, 0.256095f, 0.875000f, 0.500000f, - -1.278160f, -0.228531f, 0.084375f, -0.558837f, -0.634504f, 0.533953f, 0.750000f, 0.625000f, - -1.285887f, -0.240706f, 0.049219f, -0.632854f, -0.736497f, 0.238887f, 0.875000f, 0.625000f, - -1.288818f, -0.245325f, -0.000000f, -0.647649f, -0.761939f, -0.000000f, 1.000000f, 0.625000f, - -1.192680f, -0.311601f, 0.049219f, -0.548245f, -0.806248f, 0.222240f, 0.875000f, 0.750000f, - -1.183388f, -0.279157f, 0.105469f, -0.331427f, -0.460343f, 0.823553f, 0.625000f, 0.750000f, - -1.084058f, -0.318988f, 0.112500f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.875000f, - -1.083045f, -0.343226f, 0.105469f, -0.286990f, -0.503756f, 0.814780f, 0.625000f, 0.875000f, - -1.082161f, -0.364370f, 0.084375f, -0.423555f, -0.760495f, 0.492187f, 0.750000f, 0.875000f, - -0.965820f, -0.402539f, 0.105469f, -0.232611f, -0.516913f, 0.823829f, 0.625000f, 1.000000f, - -1.192680f, -0.311601f, 0.049219f, -0.548245f, -0.806248f, 0.222240f, 0.875000f, 0.750000f, - -1.082161f, -0.364370f, 0.084375f, -0.423555f, -0.760495f, 0.492188f, 0.750000f, 0.875000f, - -1.081536f, -0.379325f, 0.049219f, -0.470388f, -0.855760f, 0.215428f, 0.875000f, 0.875000f, - -1.081299f, -0.384998f, -0.000000f, -0.479572f, -0.877503f, -0.000000f, 1.000000f, 0.875000f, - -0.952148f, -0.443555f, 0.049219f, -0.400263f, -0.889473f, 0.220515f, 0.875000f, 1.000000f, - -1.500000f, 0.150000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 0.000000f, 0.000000f, - -1.350000f, 0.150000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 1.000000f, 0.000000f, - -0.950000f, -0.450000f, -0.000000f, -0.410365f, -0.911922f, -0.000000f, 0.000000f, 1.000000f, - -1.000000f, -0.300000f, -0.000000f, 0.410365f, 0.911922f, -0.000000f, 1.000000f, 1.000000f, - -1.425000f, 0.150000f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.000000f, - -1.365625f, -0.171094f, -0.000000f, -0.743581f, -0.668646f, -0.000000f, 0.000000f, 0.500000f, - -1.317188f, -0.123047f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.500000f, - -1.268750f, -0.075000f, -0.000000f, 0.832050f, 0.554700f, -0.000000f, 1.000000f, 0.500000f, - -0.975000f, -0.375000f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 1.000000f, - -1.476562f, 0.150000f, -0.084375f, -0.800000f, -0.000000f, -0.600000f, 0.250000f, 0.000000f, - -1.466797f, -0.014941f, -0.000000f, -0.923524f, -0.383540f, -0.000000f, 0.000000f, 0.250000f, - -1.445496f, -0.005099f, -0.084375f, -0.741200f, -0.302104f, -0.599462f, 0.250000f, 0.250000f, - -1.398633f, 0.016553f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.250000f, - -1.350488f, -0.156079f, -0.084375f, -0.623402f, -0.542826f, -0.562770f, 0.250000f, 0.500000f, - -1.493555f, 0.150000f, -0.049219f, -0.960000f, -0.000000f, -0.280000f, 0.125000f, 0.000000f, - -1.491748f, 0.066541f, -0.000000f, -0.980463f, -0.196702f, -0.000000f, 0.000000f, 0.125000f, - -1.485452f, 0.068106f, -0.049219f, -0.940967f, -0.188477f, -0.281171f, 0.125000f, 0.125000f, - -1.468852f, 0.072234f, -0.084375f, -0.783295f, -0.156125f, -0.601726f, 0.250000f, 0.125000f, - -1.460939f, -0.012235f, -0.049219f, -0.887220f, -0.366595f, -0.280086f, 0.125000f, 0.250000f, - -1.452539f, 0.150000f, -0.105469f, -0.470588f, -0.000000f, -0.882353f, 0.375000f, 0.000000f, - -1.468852f, 0.072234f, -0.084375f, -0.783295f, -0.156125f, -0.601726f, 0.250000f, 0.125000f, - -1.445384f, 0.078070f, -0.105469f, -0.460039f, -0.091036f, -0.883219f, 0.375000f, 0.125000f, - -1.418481f, 0.084760f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.125000f, - -1.423662f, 0.004988f, -0.105469f, -0.437356f, -0.173995f, -0.882296f, 0.375000f, 0.250000f, - -1.460939f, -0.012235f, -0.049219f, -0.887221f, -0.366595f, -0.280086f, 0.125000f, 0.250000f, - -1.424854f, -0.094226f, -0.000000f, -0.839602f, -0.543202f, -0.000000f, 0.000000f, 0.375000f, - -1.419711f, -0.090700f, -0.049219f, -0.809767f, -0.519983f, -0.271837f, 0.125000f, 0.375000f, - -1.406154f, -0.081403f, -0.084375f, -0.685340f, -0.430186f, -0.587580f, 0.250000f, 0.375000f, - -1.361462f, -0.166965f, -0.049219f, -0.721599f, -0.643198f, -0.256108f, 0.125000f, 0.500000f, - -1.423662f, 0.004988f, -0.105469f, -0.437356f, -0.173994f, -0.882296f, 0.375000f, 0.250000f, - -1.406154f, -0.081403f, -0.084375f, -0.685340f, -0.430186f, -0.587579f, 0.250000f, 0.375000f, - -1.386987f, -0.068259f, -0.105469f, -0.412506f, -0.250677f, -0.875785f, 0.375000f, 0.375000f, - -1.365015f, -0.053192f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.375000f, - -1.334973f, -0.140689f, -0.105469f, -0.389066f, -0.325292f, -0.861866f, 0.375000f, 0.500000f, - -1.373438f, 0.150000f, -0.084375f, 0.800000f, 0.000000f, -0.600000f, 0.750000f, 0.000000f, - -1.398633f, 0.016553f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.250000f, - -1.351770f, 0.038205f, -0.084375f, 0.753631f, 0.271366f, -0.598666f, 0.750000f, 0.250000f, - -1.330469f, 0.048047f, -0.000000f, 0.945778f, 0.324813f, -0.000000f, 1.000000f, 0.250000f, - -1.283887f, -0.090015f, -0.084375f, 0.674847f, 0.482249f, -0.558585f, 0.750000f, 0.500000f, - -1.397461f, 0.150000f, -0.105469f, 0.470589f, 0.000000f, -0.882353f, 0.625000f, 0.000000f, - -1.418481f, 0.084760f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.125000f, - -1.391579f, 0.091449f, -0.105469f, 0.460478f, 0.089118f, -0.883187f, 0.625000f, 0.125000f, - -1.368111f, 0.097285f, -0.084375f, 0.784624f, 0.149799f, -0.601603f, 0.750000f, 0.125000f, - -1.373604f, 0.028117f, -0.105469f, 0.441621f, 0.164404f, -0.882010f, 0.625000f, 0.250000f, - -1.356445f, 0.150000f, -0.049219f, 0.960000f, 0.000000f, -0.280000f, 0.875000f, 0.000000f, - -1.368111f, 0.097285f, -0.084375f, 0.784625f, 0.149799f, -0.601602f, 0.750000f, 0.125000f, - -1.351511f, 0.101413f, -0.049219f, 0.942997f, 0.178224f, -0.281057f, 0.875000f, 0.125000f, - -1.345215f, 0.102979f, -0.000000f, 0.982777f, 0.184796f, -0.000000f, 1.000000f, 0.125000f, - -1.336327f, 0.045340f, -0.049219f, 0.906857f, 0.315800f, -0.279070f, 0.875000f, 0.250000f, - -1.373604f, 0.028117f, -0.105469f, 0.441621f, 0.164404f, -0.882010f, 0.625000f, 0.250000f, - -1.365015f, -0.053192f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.375000f, - -1.343043f, -0.038125f, -0.105469f, 0.423222f, 0.234233f, -0.875224f, 0.625000f, 0.375000f, - -1.323875f, -0.024981f, -0.084375f, 0.717810f, 0.376810f, -0.585460f, 0.750000f, 0.375000f, - -1.299402f, -0.105405f, -0.105469f, 0.407093f, 0.306052f, -0.860586f, 0.625000f, 0.500000f, - -1.336327f, 0.045340f, -0.049219f, 0.906858f, 0.315799f, -0.279070f, 0.875000f, 0.250000f, - -1.323875f, -0.024981f, -0.084375f, 0.717810f, 0.376810f, -0.585460f, 0.750000f, 0.375000f, - -1.310318f, -0.015685f, -0.049219f, 0.859273f, 0.434496f, -0.269932f, 0.875000f, 0.375000f, - -1.305176f, -0.012158f, -0.000000f, 0.895694f, 0.444671f, -0.000000f, 1.000000f, 0.375000f, - -1.272913f, -0.079129f, -0.049219f, 0.800087f, 0.544204f, -0.252394f, 0.875000f, 0.500000f, - -1.350488f, -0.156079f, -0.084375f, -0.623402f, -0.542826f, -0.562770f, 0.250000f, 0.500000f, - -1.194141f, -0.316699f, -0.000000f, -0.558748f, -0.829337f, -0.000000f, 0.000000f, 0.750000f, - -1.188831f, -0.298160f, -0.084375f, -0.490104f, -0.707628f, -0.508980f, 0.250000f, 0.750000f, - -1.177148f, -0.257373f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.750000f, - -0.957812f, -0.426562f, -0.084375f, -0.354770f, -0.788378f, -0.502591f, 0.250000f, 1.000000f, - -1.361462f, -0.166965f, -0.049219f, -0.721599f, -0.643198f, -0.256108f, 0.125000f, 0.500000f, - -1.288818f, -0.245325f, -0.000000f, -0.647649f, -0.761939f, -0.000000f, 0.000000f, 0.625000f, - -1.285887f, -0.240706f, -0.049219f, -0.632123f, -0.737115f, -0.238917f, 0.125000f, 0.625000f, - -1.278160f, -0.228531f, -0.084375f, -0.558837f, -0.634504f, -0.533953f, 0.250000f, 0.625000f, - -1.192680f, -0.311601f, -0.049219f, -0.547600f, -0.806671f, -0.222295f, 0.125000f, 0.750000f, - -1.334973f, -0.140689f, -0.105469f, -0.389066f, -0.325292f, -0.861866f, 0.375000f, 0.500000f, - -1.278160f, -0.228531f, -0.084375f, -0.558837f, -0.634504f, -0.533952f, 0.250000f, 0.625000f, - -1.267236f, -0.211316f, -0.105469f, -0.361844f, -0.395706f, -0.844088f, 0.375000f, 0.625000f, - -1.254712f, -0.191583f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.625000f, - -1.183388f, -0.279157f, -0.105469f, -0.330412f, -0.460754f, -0.823731f, 0.375000f, 0.750000f, - -1.192680f, -0.311601f, -0.049219f, -0.547601f, -0.806671f, -0.222295f, 0.125000f, 0.750000f, - -1.081299f, -0.384998f, -0.000000f, -0.479572f, -0.877503f, -0.000000f, 0.000000f, 0.875000f, - -1.081536f, -0.379325f, -0.049219f, -0.470000f, -0.855960f, -0.215482f, 0.125000f, 0.875000f, - -1.082161f, -0.364370f, -0.084375f, -0.423555f, -0.760495f, -0.492188f, 0.250000f, 0.875000f, - -0.952148f, -0.443555f, -0.049219f, -0.400263f, -0.889473f, -0.220515f, 0.125000f, 1.000000f, - -1.183388f, -0.279157f, -0.105469f, -0.330412f, -0.460754f, -0.823731f, 0.375000f, 0.750000f, - -1.082161f, -0.364370f, -0.084375f, -0.423555f, -0.760495f, -0.492187f, 0.250000f, 0.875000f, - -1.083045f, -0.343226f, -0.105469f, -0.286325f, -0.503846f, -0.814958f, 0.375000f, 0.875000f, - -1.084058f, -0.318988f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.875000f, - -0.965820f, -0.402539f, -0.105469f, -0.232611f, -0.516913f, -0.823829f, 0.375000f, 1.000000f, - -1.283887f, -0.090015f, -0.084375f, 0.674847f, 0.482249f, -0.558585f, 0.750000f, 0.500000f, - -1.177148f, -0.257373f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.750000f, - -1.165466f, -0.216586f, -0.084375f, 0.549511f, 0.670716f, -0.498173f, 0.750000f, 0.750000f, - -1.160156f, -0.198047f, -0.000000f, 0.655687f, 0.755033f, -0.000000f, 1.000000f, 0.750000f, - -0.992188f, -0.323438f, -0.084375f, 0.354770f, 0.788378f, -0.502591f, 0.750000f, 1.000000f, - -1.299402f, -0.105405f, -0.105469f, 0.407093f, 0.306051f, -0.860586f, 0.625000f, 0.500000f, - -1.254712f, -0.191583f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.625000f, - -1.242188f, -0.171850f, -0.105469f, 0.384959f, 0.378821f, -0.841606f, 0.625000f, 0.625000f, - -1.231264f, -0.154636f, -0.084375f, 0.623037f, 0.578584f, -0.526370f, 0.750000f, 0.625000f, - -1.170909f, -0.235589f, -0.105469f, 0.354017f, 0.451010f, -0.819306f, 0.625000f, 0.750000f, - -1.272913f, -0.079129f, -0.049219f, 0.800088f, 0.544202f, -0.252394f, 0.875000f, 0.500000f, - -1.231264f, -0.154636f, -0.084375f, 0.623037f, 0.578584f, -0.526370f, 0.750000f, 0.625000f, - -1.223536f, -0.142460f, -0.049219f, 0.725742f, 0.647344f, -0.232905f, 0.875000f, 0.625000f, - -1.220605f, -0.137842f, -0.000000f, 0.752687f, 0.658378f, -0.000000f, 1.000000f, 0.625000f, - -1.161617f, -0.203145f, -0.049219f, 0.634450f, 0.742942f, -0.213332f, 0.875000f, 0.750000f, - -1.170909f, -0.235589f, -0.105469f, 0.354017f, 0.451010f, -0.819306f, 0.625000f, 0.750000f, - -1.084058f, -0.318988f, -0.112500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.875000f, - -1.085071f, -0.294750f, -0.105469f, 0.301978f, 0.501655f, -0.810649f, 0.625000f, 0.875000f, - -1.085954f, -0.273607f, -0.084375f, 0.462854f, 0.744576f, -0.481012f, 0.750000f, 0.875000f, - -0.984180f, -0.347461f, -0.105469f, 0.232611f, 0.516912f, -0.823829f, 0.625000f, 1.000000f, - -1.161617f, -0.203145f, -0.049219f, 0.634450f, 0.742942f, -0.213332f, 0.875000f, 0.750000f, - -1.085954f, -0.273607f, -0.084375f, 0.462854f, 0.744576f, -0.481012f, 0.750000f, 0.875000f, - -1.086579f, -0.258651f, -0.049219f, 0.524892f, 0.825535f, -0.207317f, 0.875000f, 0.875000f, - -1.086816f, -0.252979f, -0.000000f, 0.540758f, 0.841178f, -0.000000f, 1.000000f, 0.875000f, - -0.997852f, -0.306445f, -0.049219f, 0.400263f, 0.889473f, -0.220515f, 0.875000f, 1.000000f, - 0.850000f, -0.037500f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 0.000000f, 0.000000f, - 0.850000f, -0.450000f, -0.000000f, 0.158678f, -0.987330f, 0.000000f, 1.000000f, 0.000000f, - 1.350000f, 0.450000f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 0.000000f, 1.000000f, - 1.650000f, 0.450000f, -0.000000f, 0.384615f, -0.923077f, 0.000000f, 1.000000f, 1.000000f, - 0.850000f, -0.243750f, 0.247500f, -0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.000000f, - 1.193750f, 0.150000f, -0.000000f, -0.920582f, 0.390550f, 0.000000f, 0.000000f, 0.500000f, - 1.268750f, 0.060938f, 0.170625f, 0.213724f, 0.177140f, 0.960699f, 0.500000f, 0.500000f, - 1.343750f, -0.028125f, -0.000000f, 0.957826f, -0.287348f, 0.000000f, 1.000000f, 0.500000f, - 1.500000f, 0.450000f, 0.093750f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 1.000000f, - 0.850000f, -0.101953f, 0.185625f, -0.024132f, 0.729325f, 0.683742f, 0.250000f, 0.000000f, - 1.089844f, 0.017578f, -0.000000f, -0.544548f, 0.838729f, 0.000000f, 0.000000f, 0.250000f, - 1.108154f, -0.030212f, 0.167607f, -0.371220f, 0.678515f, 0.633887f, 0.250000f, 0.250000f, - 1.148438f, -0.135352f, 0.223477f, 0.171854f, 0.062939f, 0.983110f, 0.500000f, 0.250000f, - 1.217188f, 0.122168f, 0.127969f, -0.695041f, 0.414771f, 0.587267f, 0.250000f, 0.500000f, - 0.850000f, -0.055225f, 0.108281f, -0.009231f, 0.939467f, 0.342514f, 0.125000f, 0.000000f, - 0.992480f, -0.022705f, -0.000000f, -0.235151f, 0.971959f, 0.000000f, 0.000000f, 0.125000f, - 0.995678f, -0.038346f, 0.105391f, -0.221262f, 0.921126f, 0.320265f, 0.125000f, 0.125000f, - 1.004108f, -0.079582f, 0.180670f, -0.165703f, 0.736103f, 0.656273f, 0.250000f, 0.125000f, - 1.094879f, 0.004436f, 0.097771f, -0.507507f, 0.807721f, 0.300039f, 0.125000f, 0.250000f, - 0.850000f, -0.168018f, 0.232031f, -0.025797f, 0.392308f, 0.919472f, 0.375000f, 0.000000f, - 1.004108f, -0.079582f, 0.180670f, -0.165703f, 0.736103f, 0.656273f, 0.250000f, 0.125000f, - 1.016026f, -0.137881f, 0.225838f, -0.059540f, 0.413822f, 0.908409f, 0.375000f, 0.125000f, - 1.029688f, -0.204712f, 0.240894f, 0.079921f, 0.015529f, 0.996680f, 0.500000f, 0.125000f, - 1.126923f, -0.079198f, 0.209509f, -0.127458f, 0.418405f, 0.899273f, 0.375000f, 0.250000f, - 1.094879f, 0.004436f, 0.097771f, -0.507507f, 0.807721f, 0.300039f, 0.125000f, 0.250000f, - 1.153223f, 0.077197f, -0.000000f, -0.801883f, 0.597481f, 0.000000f, 0.000000f, 0.375000f, - 1.159190f, 0.066780f, 0.086998f, -0.756895f, 0.593502f, 0.273617f, 0.125000f, 0.375000f, - 1.174921f, 0.039317f, 0.149139f, -0.577629f, 0.549531f, 0.603623f, 0.250000f, 0.375000f, - 1.200195f, 0.142346f, 0.074648f, -0.876990f, 0.403565f, 0.260813f, 0.125000f, 0.500000f, - 1.126923f, -0.079198f, 0.209509f, -0.127458f, 0.418405f, 0.899273f, 0.375000f, 0.250000f, - 1.174921f, 0.039317f, 0.149139f, -0.577629f, 0.549531f, 0.603623f, 0.250000f, 0.375000f, - 1.197161f, 0.000490f, 0.186424f, -0.218772f, 0.394191f, 0.892610f, 0.375000f, 0.375000f, - 1.222656f, -0.044019f, 0.198853f, 0.229848f, 0.129312f, 0.964597f, 0.500000f, 0.375000f, - 1.241211f, 0.093640f, 0.159961f, -0.296452f, 0.354445f, 0.886840f, 0.375000f, 0.500000f, - 0.850000f, -0.385547f, 0.185625f, 0.102331f, -0.725708f, 0.680351f, 0.750000f, 0.000000f, - 1.148438f, -0.135352f, 0.223477f, 0.171854f, 0.062939f, 0.983110f, 0.500000f, 0.250000f, - 1.188721f, -0.240491f, 0.167607f, 0.612561f, -0.529591f, 0.586772f, 0.750000f, 0.250000f, - 1.207031f, -0.288281f, -0.000000f, 0.718240f, -0.695795f, 0.000000f, 1.000000f, 0.250000f, - 1.320312f, -0.000293f, 0.127969f, 0.837979f, -0.174710f, 0.516979f, 0.750000f, 0.500000f, - 0.850000f, -0.319482f, 0.232031f, 0.048061f, -0.391985f, 0.918715f, 0.625000f, 0.000000f, - 1.029688f, -0.204712f, 0.240894f, 0.079921f, 0.015529f, 0.996680f, 0.500000f, 0.125000f, - 1.043350f, -0.271543f, 0.225838f, 0.224876f, -0.377046f, 0.898480f, 0.625000f, 0.125000f, - 1.055267f, -0.329842f, 0.180670f, 0.342821f, -0.685430f, 0.642386f, 0.750000f, 0.125000f, - 1.169952f, -0.191505f, 0.209509f, 0.435323f, -0.278094f, 0.856247f, 0.625000f, 0.250000f, - 0.850000f, -0.432275f, 0.108281f, 0.144604f, -0.929633f, 0.338929f, 0.875000f, 0.000000f, - 1.055267f, -0.329842f, 0.180670f, 0.342821f, -0.685430f, 0.642386f, 0.750000f, 0.125000f, - 1.063697f, -0.371078f, 0.105391f, 0.408872f, -0.857837f, 0.311351f, 0.875000f, 0.125000f, - 1.066895f, -0.386719f, -0.000000f, 0.427109f, -0.904200f, 0.000000f, 1.000000f, 0.125000f, - 1.201996f, -0.275139f, 0.097771f, 0.697781f, -0.660281f, 0.277723f, 0.875000f, 0.250000f, - 1.169952f, -0.191505f, 0.209509f, 0.435322f, -0.278094f, 0.856247f, 0.625000f, 0.250000f, - 1.222656f, -0.044019f, 0.198853f, 0.229848f, 0.129312f, 0.964597f, 0.500000f, 0.375000f, - 1.248151f, -0.088527f, 0.186424f, 0.585763f, -0.133695f, 0.799380f, 0.625000f, 0.375000f, - 1.270392f, -0.127354f, 0.149139f, 0.789294f, -0.317418f, 0.525605f, 0.750000f, 0.375000f, - 1.296289f, 0.028235f, 0.159961f, 0.613165f, -0.021542f, 0.789661f, 0.625000f, 0.500000f, - 1.201996f, -0.275139f, 0.097771f, 0.697781f, -0.660281f, 0.277723f, 0.875000f, 0.250000f, - 1.270392f, -0.127354f, 0.149139f, 0.789294f, -0.317418f, 0.525605f, 0.750000f, 0.375000f, - 1.286123f, -0.154817f, 0.086998f, 0.877362f, -0.413464f, 0.243482f, 0.875000f, 0.375000f, - 1.292090f, -0.165234f, -0.000000f, 0.897596f, -0.440819f, 0.000000f, 1.000000f, 0.375000f, - 1.337305f, -0.020471f, 0.074648f, 0.935156f, -0.261048f, 0.239452f, 0.875000f, 0.500000f, - 1.217188f, 0.122168f, 0.127969f, -0.695041f, 0.414772f, 0.587267f, 0.250000f, 0.500000f, - 1.250781f, 0.310547f, -0.000000f, -0.928477f, 0.371391f, 0.000000f, 0.000000f, 0.750000f, - 1.279346f, 0.300476f, 0.088330f, -0.634799f, 0.386374f, 0.669138f, 0.250000f, 0.750000f, - 1.342187f, 0.278320f, 0.117773f, 0.067770f, 0.175606f, 0.982125f, 0.500000f, 0.750000f, - 1.396875f, 0.450000f, 0.070312f, -0.390971f, 0.593197f, 0.703747f, 0.250000f, 1.000000f, - 1.200195f, 0.142346f, 0.074648f, -0.876990f, 0.403566f, 0.260813f, 0.125000f, 0.500000f, - 1.222558f, 0.229834f, -0.000000f, -0.950213f, 0.311602f, 0.000000f, 0.000000f, 0.625000f, - 1.229482f, 0.224792f, 0.062299f, -0.900661f, 0.331376f, 0.281068f, 0.125000f, 0.625000f, - 1.247736f, 0.211501f, 0.106798f, -0.702257f, 0.362674f, 0.612620f, 0.250000f, 0.625000f, - 1.258636f, 0.307777f, 0.051526f, -0.858527f, 0.385856f, 0.337708f, 0.125000f, 0.750000f, - 1.241211f, 0.093640f, 0.159961f, -0.296452f, 0.354445f, 0.886840f, 0.375000f, 0.500000f, - 1.247736f, 0.211501f, 0.106798f, -0.702256f, 0.362674f, 0.612621f, 0.250000f, 0.625000f, - 1.273542f, 0.192709f, 0.133498f, -0.321036f, 0.326352f, 0.889062f, 0.375000f, 0.625000f, - 1.303125f, 0.171167f, 0.142397f, 0.144754f, 0.193543f, 0.970354f, 0.500000f, 0.625000f, - 1.308624f, 0.290154f, 0.110413f, -0.297769f, 0.322801f, 0.898406f, 0.375000f, 0.750000f, - 1.258636f, 0.307777f, 0.051526f, -0.858527f, 0.385856f, 0.337708f, 0.125000f, 0.750000f, - 1.289551f, 0.385986f, -0.000000f, -0.828868f, 0.559444f, 0.000000f, 0.000000f, 0.875000f, - 1.299244f, 0.384960f, 0.043906f, -0.742962f, 0.544199f, 0.389686f, 0.125000f, 0.875000f, - 1.324799f, 0.382256f, 0.075267f, -0.517529f, 0.474866f, 0.711805f, 0.250000f, 0.875000f, - 1.362891f, 0.450000f, 0.041016f, -0.541369f, 0.750540f, 0.378959f, 0.125000f, 1.000000f, - 1.308624f, 0.290154f, 0.110413f, -0.297769f, 0.322801f, 0.898406f, 0.375000f, 0.750000f, - 1.324799f, 0.382256f, 0.075267f, -0.517529f, 0.474866f, 0.711805f, 0.250000f, 0.875000f, - 1.360928f, 0.378432f, 0.094084f, -0.253078f, 0.335498f, 0.907410f, 0.375000f, 0.875000f, - 1.402344f, 0.374048f, 0.100356f, 0.015086f, 0.130164f, 0.991378f, 0.500000f, 0.875000f, - 1.444922f, 0.450000f, 0.087891f, -0.203320f, 0.348629f, 0.914942f, 0.375000f, 1.000000f, - 1.320312f, -0.000293f, 0.127969f, 0.837979f, -0.174710f, 0.516979f, 0.750000f, 0.500000f, - 1.342187f, 0.278320f, 0.117773f, 0.067770f, 0.175606f, 0.982125f, 0.500000f, 0.750000f, - 1.405029f, 0.256165f, 0.088330f, 0.697661f, -0.240664f, 0.674796f, 0.750000f, 0.750000f, - 1.433594f, 0.246094f, -0.000000f, 0.897727f, -0.440551f, 0.000000f, 1.000000f, 0.750000f, - 1.603125f, 0.450000f, 0.070312f, 0.328506f, -0.736502f, 0.591311f, 0.750000f, 1.000000f, - 1.296289f, 0.028235f, 0.159961f, 0.613165f, -0.021543f, 0.789661f, 0.625000f, 0.500000f, - 1.303125f, 0.171167f, 0.142397f, 0.144754f, 0.193543f, 0.970354f, 0.500000f, 0.625000f, - 1.332708f, 0.149625f, 0.133498f, 0.543037f, 0.012500f, 0.839616f, 0.625000f, 0.625000f, - 1.358514f, 0.130833f, 0.106798f, 0.802971f, -0.151273f, 0.576501f, 0.750000f, 0.625000f, - 1.375751f, 0.266487f, 0.110413f, 0.409019f, -0.025151f, 0.912179f, 0.625000f, 0.750000f, - 1.337305f, -0.020471f, 0.074648f, 0.935156f, -0.261048f, 0.239452f, 0.875000f, 0.500000f, - 1.358514f, 0.130833f, 0.106798f, 0.802972f, -0.151273f, 0.576501f, 0.750000f, 0.625000f, - 1.376768f, 0.117542f, 0.062299f, 0.928216f, -0.252378f, 0.273351f, 0.875000f, 0.625000f, - 1.383691f, 0.112500f, -0.000000f, 0.958492f, -0.285121f, 0.000000f, 1.000000f, 0.625000f, - 1.425738f, 0.248863f, 0.051526f, 0.856186f, -0.391161f, 0.337548f, 0.875000f, 0.750000f, - 1.375751f, 0.266487f, 0.110413f, 0.409019f, -0.025151f, 0.912179f, 0.625000f, 0.750000f, - 1.402344f, 0.374048f, 0.100356f, 0.015086f, 0.130164f, 0.991378f, 0.500000f, 0.875000f, - 1.443760f, 0.369664f, 0.094084f, 0.287699f, -0.145568f, 0.946593f, 0.625000f, 0.875000f, - 1.479889f, 0.365840f, 0.075267f, 0.529482f, -0.444837f, 0.722336f, 0.750000f, 0.875000f, - 1.555078f, 0.450000f, 0.087891f, 0.197370f, -0.414974f, 0.888167f, 0.625000f, 1.000000f, - 1.425738f, 0.248863f, 0.051526f, 0.856187f, -0.391160f, 0.337548f, 0.875000f, 0.750000f, - 1.479889f, 0.365840f, 0.075267f, 0.529481f, -0.444836f, 0.722337f, 0.750000f, 0.875000f, - 1.505444f, 0.363135f, 0.043906f, 0.670506f, -0.648431f, 0.360497f, 0.875000f, 0.875000f, - 1.515137f, 0.362109f, -0.000000f, 0.704117f, -0.710084f, 0.000000f, 1.000000f, 0.875000f, - 1.637109f, 0.450000f, 0.041016f, 0.376658f, -0.888038f, 0.263661f, 0.875000f, 1.000000f, - 0.850000f, -0.450000f, -0.000000f, 0.158678f, -0.987330f, 0.000000f, 0.000000f, 0.000000f, - 0.850000f, -0.037500f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, 0.000000f, - 1.650000f, 0.450000f, -0.000000f, 0.384615f, -0.923077f, 0.000000f, 0.000000f, 1.000000f, - 1.350000f, 0.450000f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 1.000000f, 1.000000f, - 0.850000f, -0.243750f, -0.247500f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.000000f, - 1.343750f, -0.028125f, -0.000000f, 0.957826f, -0.287348f, 0.000000f, 0.000000f, 0.500000f, - 1.268750f, 0.060938f, -0.170625f, 0.200450f, 0.166138f, -0.965514f, 0.500000f, 0.500000f, - 1.193750f, 0.150000f, -0.000000f, -0.920582f, 0.390550f, 0.000000f, 1.000000f, 0.500000f, - 1.500000f, 0.450000f, -0.093750f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 1.000000f, - 0.850000f, -0.385547f, -0.185625f, 0.105312f, -0.725480f, -0.680138f, 0.250000f, 0.000000f, - 1.207031f, -0.288281f, -0.000000f, 0.718240f, -0.695795f, 0.000000f, 0.000000f, 0.250000f, - 1.188721f, -0.240491f, -0.167607f, 0.612003f, -0.530032f, -0.586957f, 0.250000f, 0.250000f, - 1.148438f, -0.135352f, -0.223477f, 0.171854f, 0.062939f, -0.983110f, 0.500000f, 0.250000f, - 1.320312f, -0.000293f, -0.127969f, 0.836313f, -0.178498f, -0.518380f, 0.250000f, 0.500000f, - 0.850000f, -0.432275f, -0.108281f, 0.145471f, -0.929513f, -0.338885f, 0.125000f, 0.000000f, - 1.066895f, -0.386719f, -0.000000f, 0.427109f, -0.904200f, 0.000000f, 0.000000f, 0.125000f, - 1.063697f, -0.371078f, -0.105391f, 0.409189f, -0.857696f, -0.311324f, 0.125000f, 0.125000f, - 1.055267f, -0.329842f, -0.180670f, 0.342821f, -0.685430f, -0.642386f, 0.250000f, 0.125000f, - 1.201996f, -0.275139f, -0.097771f, 0.697590f, -0.660469f, -0.277758f, 0.125000f, 0.250000f, - 0.850000f, -0.319482f, -0.232031f, 0.048978f, -0.391968f, -0.918674f, 0.375000f, 0.000000f, - 1.055267f, -0.329842f, -0.180670f, 0.342821f, -0.685430f, -0.642386f, 0.250000f, 0.125000f, - 1.043350f, -0.271543f, -0.225838f, 0.224881f, -0.377045f, -0.898480f, 0.375000f, 0.125000f, - 1.029688f, -0.204712f, -0.240894f, 0.079921f, 0.015529f, -0.996680f, 0.500000f, 0.125000f, - 1.169952f, -0.191505f, -0.209509f, 0.434362f, -0.278625f, -0.856562f, 0.375000f, 0.250000f, - 1.201996f, -0.275139f, -0.097771f, 0.697590f, -0.660469f, -0.277758f, 0.125000f, 0.250000f, - 1.292090f, -0.165234f, -0.000000f, 0.897596f, -0.440819f, 0.000000f, 0.000000f, 0.375000f, - 1.286123f, -0.154817f, -0.086998f, 0.877008f, -0.414138f, -0.243610f, 0.125000f, 0.375000f, - 1.270392f, -0.127354f, -0.149139f, 0.789294f, -0.317418f, -0.525605f, 0.250000f, 0.375000f, - 1.337305f, -0.020471f, -0.074648f, 0.934784f, -0.262203f, -0.239644f, 0.125000f, 0.500000f, - 1.169952f, -0.191505f, -0.209509f, 0.434362f, -0.278625f, -0.856562f, 0.375000f, 0.250000f, - 1.270392f, -0.127354f, -0.149139f, 0.789294f, -0.317418f, -0.525605f, 0.250000f, 0.375000f, - 1.248151f, -0.088527f, -0.186424f, 0.584302f, -0.135007f, -0.800227f, 0.375000f, 0.375000f, - 1.222656f, -0.044019f, -0.198853f, 0.229848f, 0.129312f, -0.964597f, 0.500000f, 0.375000f, - 1.296289f, 0.028235f, -0.159961f, 0.611590f, -0.023659f, -0.790821f, 0.375000f, 0.500000f, - 0.850000f, -0.101953f, -0.185625f, -0.029616f, 0.729217f, -0.683641f, 0.750000f, 0.000000f, - 1.148438f, -0.135352f, -0.223477f, 0.171854f, 0.062939f, -0.983110f, 0.500000f, 0.250000f, - 1.108154f, -0.030212f, -0.167607f, -0.375101f, 0.676680f, -0.633564f, 0.750000f, 0.250000f, - 1.089844f, 0.017578f, -0.000000f, -0.544548f, 0.838729f, 0.000000f, 1.000000f, 0.250000f, - 1.217188f, 0.122168f, -0.127969f, -0.694334f, 0.415688f, -0.587455f, 0.750000f, 0.500000f, - 0.850000f, -0.168018f, -0.232031f, -0.027062f, 0.392295f, -0.919441f, 0.625000f, 0.000000f, - 1.029688f, -0.204712f, -0.240894f, 0.079921f, 0.015529f, -0.996680f, 0.500000f, 0.125000f, - 1.016026f, -0.137881f, -0.225838f, -0.060933f, 0.413563f, -0.908434f, 0.625000f, 0.125000f, - 1.004108f, -0.079582f, -0.180670f, -0.165703f, 0.736103f, -0.656273f, 0.750000f, 0.125000f, - 1.126923f, -0.079198f, -0.209509f, -0.128837f, 0.417897f, -0.899313f, 0.625000f, 0.250000f, - 0.850000f, -0.055225f, -0.108281f, -0.011227f, 0.939448f, -0.342507f, 0.875000f, 0.000000f, - 1.004108f, -0.079582f, -0.180670f, -0.165703f, 0.736103f, -0.656273f, 0.750000f, 0.125000f, - 0.995678f, -0.038346f, -0.105391f, -0.222729f, 0.920780f, -0.320245f, 0.875000f, 0.125000f, - 0.992480f, -0.022705f, -0.000000f, -0.235151f, 0.971959f, 0.000000f, 1.000000f, 0.125000f, - 1.094879f, 0.004436f, -0.097771f, -0.508167f, 0.807322f, -0.299996f, 0.875000f, 0.250000f, - 1.126923f, -0.079198f, -0.209509f, -0.128837f, 0.417897f, -0.899313f, 0.625000f, 0.250000f, - 1.222656f, -0.044019f, -0.198853f, 0.229848f, 0.129312f, -0.964597f, 0.500000f, 0.375000f, - 1.197161f, 0.000490f, -0.186424f, -0.219827f, 0.393598f, -0.892612f, 0.625000f, 0.375000f, - 1.174921f, 0.039317f, -0.149139f, -0.577629f, 0.549531f, -0.603623f, 0.750000f, 0.375000f, - 1.241211f, 0.093640f, -0.159961f, -0.296846f, 0.354114f, -0.886840f, 0.625000f, 0.500000f, - 1.094879f, 0.004436f, -0.097771f, -0.508167f, 0.807322f, -0.299996f, 0.875000f, 0.250000f, - 1.174921f, 0.039317f, -0.149139f, -0.577629f, 0.549531f, -0.603623f, 0.750000f, 0.375000f, - 1.159190f, 0.066780f, -0.086998f, -0.756738f, 0.593689f, -0.273644f, 0.875000f, 0.375000f, - 1.153223f, 0.077197f, -0.000000f, -0.801883f, 0.597481f, 0.000000f, 1.000000f, 0.375000f, - 1.200195f, 0.142346f, -0.074648f, -0.876392f, 0.404760f, -0.260971f, 0.875000f, 0.500000f, - 1.320312f, -0.000293f, -0.127969f, 0.836313f, -0.178498f, -0.518380f, 0.250000f, 0.500000f, - 1.433594f, 0.246094f, -0.000000f, 0.897727f, -0.440551f, 0.000000f, 0.000000f, 0.750000f, - 1.405029f, 0.256165f, -0.088330f, 0.694944f, -0.248071f, -0.674918f, 0.250000f, 0.750000f, - 1.342187f, 0.278320f, -0.117773f, 0.067770f, 0.175606f, -0.982125f, 0.500000f, 0.750000f, - 1.603125f, 0.450000f, -0.070312f, 0.325932f, -0.741335f, -0.586677f, 0.250000f, 1.000000f, - 1.337305f, -0.020471f, -0.074648f, 0.934784f, -0.262203f, -0.239644f, 0.125000f, 0.500000f, - 1.383691f, 0.112500f, -0.000000f, 0.958492f, -0.285121f, 0.000000f, 0.000000f, 0.625000f, - 1.376768f, 0.117542f, -0.062299f, 0.927697f, -0.254079f, -0.273535f, 0.125000f, 0.625000f, - 1.358514f, 0.130833f, -0.106798f, 0.802972f, -0.151273f, -0.576501f, 0.250000f, 0.625000f, - 1.425738f, 0.248863f, -0.051526f, 0.855222f, -0.393324f, -0.337479f, 0.125000f, 0.750000f, - 1.296289f, 0.028235f, -0.159961f, 0.611590f, -0.023659f, -0.790821f, 0.375000f, 0.500000f, - 1.358514f, 0.130833f, -0.106798f, 0.802971f, -0.151273f, -0.576501f, 0.250000f, 0.625000f, - 1.332708f, 0.149625f, -0.133498f, 0.541544f, 0.009652f, -0.840617f, 0.375000f, 0.625000f, - 1.303125f, 0.171167f, -0.142397f, 0.144754f, 0.193543f, -0.970354f, 0.500000f, 0.625000f, - 1.375751f, 0.266487f, -0.110413f, 0.408001f, -0.028503f, -0.912536f, 0.375000f, 0.750000f, - 1.425738f, 0.248863f, -0.051526f, 0.855222f, -0.393323f, -0.337479f, 0.125000f, 0.750000f, - 1.515137f, 0.362109f, -0.000000f, 0.704117f, -0.710084f, 0.000000f, 0.000000f, 0.875000f, - 1.505444f, 0.363135f, -0.043906f, 0.669146f, -0.650146f, -0.359936f, 0.125000f, 0.875000f, - 1.479889f, 0.365840f, -0.075267f, 0.529481f, -0.444836f, -0.722337f, 0.250000f, 0.875000f, - 1.637109f, 0.450000f, -0.041016f, 0.375683f, -0.888654f, -0.262978f, 0.125000f, 1.000000f, - 1.375751f, 0.266487f, -0.110413f, 0.408001f, -0.028503f, -0.912536f, 0.375000f, 0.750000f, - 1.479889f, 0.365840f, -0.075267f, 0.529482f, -0.444837f, -0.722336f, 0.250000f, 0.875000f, - 1.443760f, 0.369664f, -0.094084f, 0.287200f, -0.148873f, -0.946231f, 0.375000f, 0.875000f, - 1.402344f, 0.374048f, -0.100356f, 0.015086f, 0.130164f, -0.991378f, 0.500000f, 0.875000f, - 1.555078f, 0.450000f, -0.087891f, 0.197089f, -0.417806f, -0.886901f, 0.375000f, 1.000000f, - 1.217188f, 0.122168f, -0.127969f, -0.694334f, 0.415688f, -0.587455f, 0.750000f, 0.500000f, - 1.342187f, 0.278320f, -0.117773f, 0.067770f, 0.175606f, -0.982125f, 0.500000f, 0.750000f, - 1.279346f, 0.300476f, -0.088330f, -0.631401f, 0.393081f, -0.668446f, 0.750000f, 0.750000f, - 1.250781f, 0.310547f, -0.000000f, -0.928477f, 0.371391f, 0.000000f, 1.000000f, 0.750000f, - 1.396875f, 0.450000f, -0.070312f, -0.386984f, 0.604180f, -0.696571f, 0.750000f, 1.000000f, - 1.241211f, 0.093640f, -0.159961f, -0.296846f, 0.354114f, -0.886840f, 0.625000f, 0.500000f, - 1.303125f, 0.171167f, -0.142397f, 0.144754f, 0.193543f, -0.970354f, 0.500000f, 0.625000f, - 1.273542f, 0.192709f, -0.133498f, -0.320819f, 0.326623f, -0.889040f, 0.625000f, 0.625000f, - 1.247736f, 0.211501f, -0.106798f, -0.702256f, 0.362674f, -0.612621f, 0.750000f, 0.625000f, - 1.308624f, 0.290154f, -0.110413f, -0.297312f, 0.323820f, -0.898191f, 0.625000f, 0.750000f, - 1.200195f, 0.142346f, -0.074648f, -0.876392f, 0.404761f, -0.260971f, 0.875000f, 0.500000f, - 1.247736f, 0.211501f, -0.106798f, -0.702257f, 0.362674f, -0.612620f, 0.750000f, 0.625000f, - 1.229482f, 0.224792f, -0.062299f, -0.899738f, 0.333705f, -0.281268f, 0.875000f, 0.625000f, - 1.222558f, 0.229834f, -0.000000f, -0.950213f, 0.311602f, 0.000000f, 1.000000f, 0.625000f, - 1.258636f, 0.307777f, -0.051526f, -0.857015f, 0.389291f, -0.337605f, 0.875000f, 0.750000f, - 1.308624f, 0.290154f, -0.110413f, -0.297312f, 0.323820f, -0.898191f, 0.625000f, 0.750000f, - 1.402344f, 0.374048f, -0.100356f, 0.015086f, 0.130164f, -0.991378f, 0.500000f, 0.875000f, - 1.360928f, 0.378432f, -0.094084f, -0.252654f, 0.337465f, -0.906799f, 0.625000f, 0.875000f, - 1.324799f, 0.382256f, -0.075267f, -0.517529f, 0.474866f, -0.711805f, 0.750000f, 0.875000f, - 1.444922f, 0.450000f, -0.087891f, -0.203025f, 0.352273f, -0.913611f, 0.625000f, 1.000000f, - 1.258636f, 0.307777f, -0.051526f, -0.857015f, 0.389291f, -0.337606f, 0.875000f, 0.750000f, - 1.324799f, 0.382256f, -0.075267f, -0.517529f, 0.474866f, -0.711805f, 0.750000f, 0.875000f, - 1.299244f, 0.384960f, -0.043906f, -0.740671f, 0.547951f, -0.388789f, 0.875000f, 0.875000f, - 1.289551f, 0.385986f, -0.000000f, -0.828868f, 0.559444f, 0.000000f, 1.000000f, 0.875000f, - 1.362891f, 0.450000f, -0.041016f, -0.538815f, 0.753273f, -0.377171f, 0.875000f, 1.000000f, - 1.350000f, 0.450000f, -0.000000f, -0.599999f, 0.800000f, 0.000000f, 0.000000f, 0.000000f, - 1.650000f, 0.450000f, -0.000000f, 0.384615f, -0.923077f, 0.000000f, 1.000000f, 0.000000f, - 1.400000f, 0.450000f, -0.000000f, 0.599998f, -0.800001f, 0.000000f, 0.000000f, 1.000000f, - 1.600000f, 0.450000f, -0.000000f, -0.410365f, 0.911922f, 0.000000f, 1.000000f, 1.000000f, - 1.500000f, 0.450000f, 0.093750f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 0.000000f, - 1.412500f, 0.478125f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 0.000000f, 0.500000f, - 1.563281f, 0.483398f, 0.075000f, -0.030653f, 0.998390f, 0.047730f, 0.500000f, 0.500000f, - 1.714062f, 0.488672f, -0.000000f, 0.106533f, 0.994309f, 0.000000f, 1.000000f, 0.500000f, - 1.500000f, 0.450000f, 0.056250f, 0.000000f, -0.000000f, -1.000000f, 0.500000f, 1.000000f, - 1.396875f, 0.450000f, 0.070312f, -0.390970f, 0.593197f, 0.703746f, 0.250000f, 0.000000f, - 1.385937f, 0.471094f, -0.000000f, -0.393919f, 0.919145f, 0.000000f, 0.000000f, 0.250000f, - 1.436139f, 0.472124f, 0.065918f, -0.261242f, 0.825249f, 0.500716f, 0.250000f, 0.250000f, - 1.546582f, 0.474390f, 0.087891f, -0.010489f, 0.543162f, 0.839563f, 0.500000f, 0.250000f, - 1.459619f, 0.479773f, 0.056250f, -0.028676f, 0.999488f, -0.014204f, 0.250000f, 0.500000f, - 1.362891f, 0.450000f, 0.041016f, -0.541370f, 0.750538f, 0.378960f, 0.125000f, 0.000000f, - 1.368555f, 0.462305f, -0.000000f, -0.502135f, 0.864789f, 0.000000f, 0.000000f, 0.125000f, - 1.382164f, 0.462453f, 0.040311f, -0.452660f, 0.827269f, 0.332754f, 0.125000f, 0.125000f, - 1.418043f, 0.462845f, 0.069104f, -0.328007f, 0.714730f, 0.617715f, 0.250000f, 0.125000f, - 1.399743f, 0.471377f, 0.038452f, -0.354757f, 0.895428f, 0.268992f, 0.125000f, 0.250000f, - 1.444922f, 0.450000f, 0.087891f, -0.203320f, 0.348630f, 0.914942f, 0.375000f, 0.000000f, - 1.418043f, 0.462845f, 0.069104f, -0.328007f, 0.714730f, 0.617715f, 0.250000f, 0.125000f, - 1.468768f, 0.463400f, 0.086380f, -0.177466f, 0.531475f, 0.828275f, 0.375000f, 0.125000f, - 1.526917f, 0.464035f, 0.092139f, -0.002586f, 0.248712f, 0.968574f, 0.500000f, 0.125000f, - 1.487595f, 0.473179f, 0.082397f, -0.146800f, 0.719542f, 0.678756f, 0.375000f, 0.250000f, - 1.399743f, 0.471377f, 0.038452f, -0.354755f, 0.895429f, 0.268990f, 0.125000f, 0.250000f, - 1.400977f, 0.476367f, -0.000000f, -0.252422f, 0.967617f, 0.000000f, 0.000000f, 0.375000f, - 1.414538f, 0.476757f, 0.035825f, -0.228367f, 0.958759f, 0.169205f, 0.125000f, 0.375000f, - 1.450289f, 0.477783f, 0.061414f, -0.171147f, 0.934241f, 0.312892f, 0.250000f, 0.375000f, - 1.425458f, 0.478578f, 0.032812f, -0.011150f, 0.999718f, -0.020946f, 0.125000f, 0.500000f, - 1.487595f, 0.473179f, 0.082397f, -0.146800f, 0.719545f, 0.678753f, 0.375000f, 0.250000f, - 1.450289f, 0.477783f, 0.061414f, -0.171148f, 0.934242f, 0.312891f, 0.250000f, 0.375000f, - 1.500835f, 0.479235f, 0.076767f, -0.104867f, 0.896864f, 0.429695f, 0.375000f, 0.375000f, - 1.558777f, 0.480899f, 0.081885f, -0.023691f, 0.837628f, 0.545728f, 0.500000f, 0.375000f, - 1.507916f, 0.481462f, 0.070312f, -0.038175f, 0.999104f, 0.018273f, 0.375000f, 0.500000f, - 1.603125f, 0.450000f, 0.070312f, 0.328506f, -0.736502f, 0.591311f, 0.750000f, 0.000000f, - 1.546582f, 0.474390f, 0.087891f, -0.010489f, 0.543162f, 0.839563f, 0.500000f, 0.250000f, - 1.657025f, 0.476656f, 0.065918f, 0.419012f, -0.340104f, 0.841878f, 0.750000f, 0.250000f, - 1.707227f, 0.477686f, -0.000000f, 0.537133f, -0.843498f, 0.000000f, 1.000000f, 0.250000f, - 1.666943f, 0.487024f, 0.056250f, 0.017233f, 0.992921f, 0.117519f, 0.750000f, 0.500000f, - 1.555078f, 0.450000f, 0.087891f, 0.197370f, -0.414975f, 0.888167f, 0.625000f, 0.000000f, - 1.526917f, 0.464035f, 0.092139f, -0.002586f, 0.248712f, 0.968574f, 0.500000f, 0.125000f, - 1.585065f, 0.464670f, 0.086380f, 0.201774f, -0.178320f, 0.963062f, 0.625000f, 0.125000f, - 1.635790f, 0.465225f, 0.069104f, 0.367189f, -0.618011f, 0.695150f, 0.750000f, 0.125000f, - 1.605569f, 0.475600f, 0.082397f, 0.182564f, 0.209574f, 0.960598f, 0.625000f, 0.250000f, - 1.637109f, 0.450000f, 0.041016f, 0.376658f, -0.888038f, 0.263661f, 0.875000f, 0.000000f, - 1.635790f, 0.465225f, 0.069104f, 0.367189f, -0.618009f, 0.695153f, 0.750000f, 0.125000f, - 1.671669f, 0.465617f, 0.040311f, 0.430592f, -0.845391f, 0.316077f, 0.875000f, 0.125000f, - 1.685278f, 0.465765f, -0.000000f, 0.438412f, -0.898774f, 0.000000f, 1.000000f, 0.125000f, - 1.693421f, 0.477402f, 0.038452f, 0.528248f, -0.743422f, 0.410218f, 0.875000f, 0.250000f, - 1.605569f, 0.475600f, 0.082397f, 0.182565f, 0.209570f, 0.960599f, 0.625000f, 0.250000f, - 1.558777f, 0.480899f, 0.081885f, -0.023691f, 0.837628f, 0.545728f, 0.500000f, 0.375000f, - 1.616719f, 0.482563f, 0.076767f, 0.105864f, 0.722978f, 0.682712f, 0.625000f, 0.375000f, - 1.667265f, 0.484015f, 0.061414f, 0.368189f, 0.433463f, 0.822524f, 0.750000f, 0.375000f, - 1.618646f, 0.485335f, 0.070312f, -0.017857f, 0.995236f, 0.095847f, 0.625000f, 0.500000f, - 1.693421f, 0.477402f, 0.038452f, 0.528244f, -0.743425f, 0.410215f, 0.875000f, 0.250000f, - 1.667265f, 0.484015f, 0.061414f, 0.368191f, 0.433462f, 0.822524f, 0.750000f, 0.375000f, - 1.703016f, 0.485041f, 0.035825f, 0.754900f, -0.180907f, 0.630395f, 0.875000f, 0.375000f, - 1.716577f, 0.485431f, -0.000000f, 0.859737f, -0.510736f, 0.000000f, 1.000000f, 0.375000f, - 1.701105f, 0.488219f, 0.032812f, 0.072271f, 0.992935f, 0.094111f, 0.875000f, 0.500000f, - 1.459619f, 0.479773f, 0.056250f, -0.028676f, 0.999488f, -0.014203f, 0.250000f, 0.500000f, - 1.420312f, 0.471094f, -0.000000f, 0.948684f, -0.316227f, 0.000000f, 0.000000f, 0.750000f, - 1.460321f, 0.472536f, 0.046582f, 0.388841f, 0.140631f, -0.910508f, 0.250000f, 0.750000f, - 1.548340f, 0.475708f, 0.062109f, -0.020139f, 0.565841f, -0.824268f, 0.500000f, 0.750000f, - 1.431250f, 0.450000f, 0.042188f, 0.370536f, -0.559922f, -0.741073f, 0.250000f, 1.000000f, - 1.425458f, 0.478578f, 0.032812f, -0.011151f, 0.999718f, -0.020945f, 0.125000f, 0.500000f, - 1.419336f, 0.476367f, -0.000000f, 0.650788f, 0.759260f, -0.000000f, 0.000000f, 0.625000f, - 1.431414f, 0.476827f, 0.029800f, 0.466018f, 0.764069f, -0.446123f, 0.125000f, 0.625000f, - 1.463255f, 0.478041f, 0.051086f, 0.212314f, 0.799230f, -0.562276f, 0.250000f, 0.625000f, - 1.431315f, 0.471490f, 0.027173f, 0.736672f, -0.149641f, -0.659487f, 0.125000f, 0.750000f, - 1.507916f, 0.481462f, 0.070312f, -0.038175f, 0.999104f, 0.018273f, 0.375000f, 0.500000f, - 1.463255f, 0.478041f, 0.051086f, 0.212315f, 0.799230f, -0.562276f, 0.250000f, 0.625000f, - 1.508271f, 0.479756f, 0.063858f, 0.061046f, 0.840539f, -0.538301f, 0.375000f, 0.625000f, - 1.559876f, 0.481723f, 0.068115f, -0.033383f, 0.880730f, -0.472440f, 0.500000f, 0.625000f, - 1.501330f, 0.474014f, 0.058228f, 0.143907f, 0.380043f, -0.913706f, 0.375000f, 0.750000f, - 1.431315f, 0.471490f, 0.027173f, 0.736673f, -0.149623f, -0.659489f, 0.125000f, 0.750000f, - 1.414258f, 0.462305f, -0.000000f, 0.727013f, -0.686624f, 0.000000f, 0.000000f, 0.875000f, - 1.424072f, 0.462553f, 0.025314f, 0.622016f, -0.580709f, -0.525236f, 0.125000f, 0.875000f, - 1.449944f, 0.463206f, 0.043396f, 0.394296f, -0.328022f, -0.858448f, 0.250000f, 0.875000f, - 1.408594f, 0.450000f, 0.024609f, 0.532585f, -0.738082f, -0.414232f, 0.125000f, 1.000000f, - 1.501330f, 0.474014f, 0.058228f, 0.143907f, 0.380043f, -0.913706f, 0.375000f, 0.750000f, - 1.449944f, 0.463206f, 0.043396f, 0.394294f, -0.328020f, -0.858449f, 0.250000f, 0.875000f, - 1.486523f, 0.464130f, 0.054245f, 0.177862f, -0.043211f, -0.983106f, 0.375000f, 0.875000f, - 1.528455f, 0.465189f, 0.057861f, -0.006299f, 0.244403f, -0.969653f, 0.500000f, 0.875000f, - 1.463281f, 0.450000f, 0.052734f, 0.186166f, -0.314478f, -0.930831f, 0.375000f, 1.000000f, - 1.666943f, 0.487024f, 0.056250f, 0.017234f, 0.992921f, 0.117521f, 0.750000f, 0.500000f, - 1.548340f, 0.475708f, 0.062109f, -0.020139f, 0.565841f, -0.824268f, 0.500000f, 0.750000f, - 1.636358f, 0.478880f, 0.046582f, -0.236122f, 0.847054f, -0.476179f, 0.750000f, 0.750000f, - 1.676367f, 0.480322f, -0.000000f, -0.309738f, 0.950822f, 0.000000f, 1.000000f, 0.750000f, - 1.568750f, 0.450000f, 0.042188f, -0.325285f, 0.686256f, -0.650571f, 0.750000f, 1.000000f, - 1.618646f, 0.485335f, 0.070312f, -0.017856f, 0.995235f, 0.095852f, 0.625000f, 0.500000f, - 1.559876f, 0.481723f, 0.068115f, -0.033384f, 0.880731f, -0.472439f, 0.500000f, 0.625000f, - 1.611480f, 0.483690f, 0.063858f, -0.102068f, 0.914951f, -0.390443f, 0.625000f, 0.625000f, - 1.656496f, 0.485405f, 0.051086f, -0.157379f, 0.946540f, -0.281590f, 0.750000f, 0.625000f, - 1.595350f, 0.477402f, 0.058228f, -0.142748f, 0.722340f, -0.676645f, 0.625000f, 0.750000f, - 1.701105f, 0.488219f, 0.032812f, 0.072275f, 0.992935f, 0.094114f, 0.875000f, 0.500000f, - 1.656496f, 0.485405f, 0.051086f, -0.157378f, 0.946540f, -0.281592f, 0.750000f, 0.625000f, - 1.688337f, 0.486619f, 0.029800f, -0.197992f, 0.969370f, -0.145333f, 0.875000f, 0.625000f, - 1.700415f, 0.487079f, -0.000000f, -0.212233f, 0.977219f, 0.000000f, 1.000000f, 0.625000f, - 1.665365f, 0.479926f, 0.027173f, -0.292302f, 0.927391f, -0.233464f, 0.875000f, 0.750000f, - 1.595350f, 0.477402f, 0.058228f, -0.142748f, 0.722338f, -0.676646f, 0.625000f, 0.750000f, - 1.528455f, 0.465189f, 0.057861f, -0.006299f, 0.244403f, -0.969653f, 0.500000f, 0.875000f, - 1.570386f, 0.466248f, 0.054245f, -0.163578f, 0.526337f, -0.834393f, 0.625000f, 0.875000f, - 1.606965f, 0.467171f, 0.043396f, -0.282838f, 0.759561f, -0.585721f, 0.750000f, 0.875000f, - 1.536719f, 0.450000f, 0.052734f, -0.182506f, 0.366028f, -0.912532f, 0.625000f, 1.000000f, - 1.665365f, 0.479926f, 0.027173f, -0.292302f, 0.927391f, -0.233463f, 0.875000f, 0.750000f, - 1.606965f, 0.467171f, 0.043396f, -0.282837f, 0.759559f, -0.585724f, 0.750000f, 0.875000f, - 1.632838f, 0.467825f, 0.025314f, -0.349511f, 0.893333f, -0.282485f, 0.875000f, 0.875000f, - 1.642651f, 0.468073f, -0.000000f, -0.366863f, 0.930275f, 0.000000f, 1.000000f, 0.875000f, - 1.591406f, 0.450000f, 0.024609f, -0.394896f, 0.865864f, -0.307141f, 0.875000f, 1.000000f, - 1.650000f, 0.450000f, -0.000000f, 0.384615f, -0.923077f, 0.000000f, 0.000000f, 0.000000f, - 1.350000f, 0.450000f, -0.000000f, -0.599999f, 0.800000f, 0.000000f, 1.000000f, 0.000000f, - 1.600000f, 0.450000f, -0.000000f, -0.410365f, 0.911922f, 0.000000f, 0.000000f, 1.000000f, - 1.400000f, 0.450000f, -0.000000f, 0.599998f, -0.800001f, 0.000000f, 1.000000f, 1.000000f, - 1.500000f, 0.450000f, -0.093750f, 0.000000f, 0.000000f, -1.000000f, 0.500000f, 0.000000f, - 1.714062f, 0.488672f, -0.000000f, 0.106533f, 0.994309f, 0.000000f, 0.000000f, 0.500000f, - 1.563281f, 0.483398f, -0.075000f, -0.030594f, 0.996500f, -0.077797f, 0.500000f, 0.500000f, - 1.412500f, 0.478125f, -0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, 0.500000f, - 1.500000f, 0.450000f, -0.056250f, 0.000000f, 0.000000f, 1.000000f, 0.500000f, 1.000000f, - 1.603125f, 0.450000f, -0.070312f, 0.325932f, -0.741335f, -0.586677f, 0.250000f, 0.000000f, - 1.707227f, 0.477686f, -0.000000f, 0.537133f, -0.843498f, 0.000000f, 0.000000f, 0.250000f, - 1.657025f, 0.476656f, -0.065918f, 0.416712f, -0.355669f, -0.836570f, 0.250000f, 0.250000f, - 1.546582f, 0.474390f, -0.087891f, -0.010489f, 0.543162f, -0.839563f, 0.500000f, 0.250000f, - 1.666943f, 0.487024f, -0.056250f, 0.020713f, 0.991902f, -0.125308f, 0.250000f, 0.500000f, - 1.637109f, 0.450000f, -0.041016f, 0.375683f, -0.888653f, -0.262978f, 0.125000f, 0.000000f, - 1.685278f, 0.465765f, -0.000000f, 0.438412f, -0.898774f, 0.000000f, 0.000000f, 0.125000f, - 1.671669f, 0.465617f, -0.040311f, 0.429299f, -0.846413f, -0.315099f, 0.125000f, 0.125000f, - 1.635790f, 0.465225f, -0.069104f, 0.367189f, -0.618009f, -0.695153f, 0.250000f, 0.125000f, - 1.693421f, 0.477402f, -0.038452f, 0.526088f, -0.745922f, -0.408450f, 0.125000f, 0.250000f, - 1.555078f, 0.450000f, -0.087891f, 0.197089f, -0.417807f, -0.886901f, 0.375000f, 0.000000f, - 1.635790f, 0.465225f, -0.069104f, 0.367189f, -0.618011f, -0.695150f, 0.250000f, 0.125000f, - 1.585065f, 0.464670f, -0.086380f, 0.201644f, -0.183060f, -0.962200f, 0.375000f, 0.125000f, - 1.526917f, 0.464035f, -0.092139f, -0.002586f, 0.248712f, -0.968574f, 0.500000f, 0.125000f, - 1.605569f, 0.475600f, -0.082397f, 0.183016f, 0.202049f, -0.962123f, 0.375000f, 0.250000f, - 1.693421f, 0.477402f, -0.038452f, 0.526085f, -0.745926f, -0.408447f, 0.125000f, 0.250000f, - 1.716577f, 0.485431f, -0.000000f, 0.859737f, -0.510736f, 0.000000f, 0.000000f, 0.375000f, - 1.703016f, 0.485041f, -0.035825f, 0.753057f, -0.194596f, -0.628520f, 0.125000f, 0.375000f, - 1.667265f, 0.484015f, -0.061414f, 0.368191f, 0.433462f, -0.822524f, 0.250000f, 0.375000f, - 1.701105f, 0.488219f, -0.032812f, 0.074241f, 0.992625f, -0.095834f, 0.125000f, 0.500000f, - 1.605569f, 0.475600f, -0.082397f, 0.183016f, 0.202045f, -0.962124f, 0.375000f, 0.250000f, - 1.667265f, 0.484015f, -0.061414f, 0.368189f, 0.433463f, -0.822524f, 0.250000f, 0.375000f, - 1.616719f, 0.482563f, -0.076767f, 0.107208f, 0.716766f, -0.689024f, 0.375000f, 0.375000f, - 1.558777f, 0.480899f, -0.081885f, -0.023691f, 0.837628f, -0.545728f, 0.500000f, 0.375000f, - 1.618646f, 0.485335f, -0.070312f, -0.017113f, 0.994843f, -0.099972f, 0.375000f, 0.500000f, - 1.396875f, 0.450000f, -0.070312f, -0.386984f, 0.604180f, -0.696570f, 0.750000f, 0.000000f, - 1.546582f, 0.474390f, -0.087891f, -0.010489f, 0.543162f, -0.839563f, 0.500000f, 0.250000f, - 1.436139f, 0.472124f, -0.065918f, -0.260333f, 0.826693f, -0.498803f, 0.750000f, 0.250000f, - 1.385937f, 0.471094f, -0.000000f, -0.393919f, 0.919145f, 0.000000f, 1.000000f, 0.250000f, - 1.459619f, 0.479773f, -0.056250f, -0.031625f, 0.999471f, 0.007533f, 0.750000f, 0.500000f, - 1.444922f, 0.450000f, -0.087891f, -0.203025f, 0.352273f, -0.913611f, 0.625000f, 0.000000f, - 1.526917f, 0.464035f, -0.092139f, -0.002586f, 0.248712f, -0.968574f, 0.500000f, 0.125000f, - 1.468768f, 0.463400f, -0.086380f, -0.177235f, 0.533433f, -0.827065f, 0.625000f, 0.125000f, - 1.418043f, 0.462845f, -0.069104f, -0.328007f, 0.714730f, -0.617715f, 0.750000f, 0.125000f, - 1.487595f, 0.473179f, -0.082397f, -0.146760f, 0.719769f, -0.678524f, 0.625000f, 0.250000f, - 1.362891f, 0.450000f, -0.041016f, -0.538816f, 0.753272f, -0.377172f, 0.875000f, 0.000000f, - 1.418043f, 0.462845f, -0.069104f, -0.328007f, 0.714730f, -0.617715f, 0.750000f, 0.125000f, - 1.382164f, 0.462453f, -0.040311f, -0.450802f, 0.828846f, -0.331350f, 0.875000f, 0.125000f, - 1.368555f, 0.462305f, -0.000000f, -0.502135f, 0.864789f, 0.000000f, 1.000000f, 0.125000f, - 1.399743f, 0.471377f, -0.038452f, -0.353662f, 0.896127f, -0.268105f, 0.875000f, 0.250000f, - 1.487595f, 0.473179f, -0.082397f, -0.146759f, 0.719772f, -0.678521f, 0.625000f, 0.250000f, - 1.558777f, 0.480899f, -0.081885f, -0.023691f, 0.837628f, -0.545728f, 0.500000f, 0.375000f, - 1.500835f, 0.479235f, -0.076767f, -0.105172f, 0.895971f, -0.431480f, 0.625000f, 0.375000f, - 1.450289f, 0.477783f, -0.061414f, -0.171148f, 0.934242f, -0.312891f, 0.750000f, 0.375000f, - 1.507916f, 0.481462f, -0.070312f, -0.038808f, 0.999007f, -0.021872f, 0.625000f, 0.500000f, - 1.399743f, 0.471377f, -0.038452f, -0.353660f, 0.896128f, -0.268103f, 0.875000f, 0.250000f, - 1.450289f, 0.477783f, -0.061414f, -0.171147f, 0.934241f, -0.312892f, 0.750000f, 0.375000f, - 1.414538f, 0.476757f, -0.035825f, -0.228267f, 0.958797f, -0.169120f, 0.875000f, 0.375000f, - 1.400977f, 0.476367f, -0.000000f, -0.252422f, 0.967617f, 0.000000f, 1.000000f, 0.375000f, - 1.425458f, 0.478578f, -0.032812f, -0.012463f, 0.999726f, 0.019791f, 0.875000f, 0.500000f, - 1.666943f, 0.487024f, -0.056250f, 0.020714f, 0.991901f, -0.125310f, 0.250000f, 0.500000f, - 1.676367f, 0.480322f, -0.000000f, -0.309738f, 0.950822f, 0.000000f, 0.000000f, 0.750000f, - 1.636358f, 0.478880f, -0.046582f, -0.235472f, 0.848126f, 0.474589f, 0.250000f, 0.750000f, - 1.548340f, 0.475708f, -0.062109f, -0.020139f, 0.565841f, 0.824268f, 0.500000f, 0.750000f, - 1.568750f, 0.450000f, -0.042188f, -0.323573f, 0.690291f, 0.647147f, 0.250000f, 1.000000f, - 1.701105f, 0.488219f, -0.032812f, 0.074245f, 0.992624f, -0.095838f, 0.125000f, 0.500000f, - 1.700415f, 0.487079f, -0.000000f, -0.212233f, 0.977219f, 0.000000f, 0.000000f, 0.625000f, - 1.688337f, 0.486619f, -0.029800f, -0.197930f, 0.969391f, 0.145277f, 0.125000f, 0.625000f, - 1.656496f, 0.485405f, -0.051086f, -0.157378f, 0.946540f, 0.281592f, 0.250000f, 0.625000f, - 1.665365f, 0.479926f, -0.027173f, -0.292143f, 0.927478f, 0.233317f, 0.125000f, 0.750000f, - 1.618646f, 0.485335f, -0.070312f, -0.017112f, 0.994843f, -0.099978f, 0.375000f, 0.500000f, - 1.656496f, 0.485405f, -0.051086f, -0.157379f, 0.946540f, 0.281590f, 0.250000f, 0.625000f, - 1.611480f, 0.483690f, -0.063858f, -0.102043f, 0.915022f, 0.390285f, 0.375000f, 0.625000f, - 1.559876f, 0.481723f, -0.068115f, -0.033384f, 0.880731f, 0.472439f, 0.500000f, 0.625000f, - 1.595350f, 0.477402f, -0.058228f, -0.142797f, 0.721999f, 0.676998f, 0.375000f, 0.750000f, - 1.665365f, 0.479926f, -0.027173f, -0.292143f, 0.927478f, 0.233317f, 0.125000f, 0.750000f, - 1.642651f, 0.468073f, -0.000000f, -0.366863f, 0.930275f, 0.000000f, 0.000000f, 0.875000f, - 1.632838f, 0.467825f, -0.025314f, -0.349075f, 0.893625f, 0.282102f, 0.125000f, 0.875000f, - 1.606965f, 0.467171f, -0.043396f, -0.282837f, 0.759559f, 0.585724f, 0.250000f, 0.875000f, - 1.591406f, 0.450000f, -0.024609f, -0.394161f, 0.866402f, 0.306569f, 0.125000f, 1.000000f, - 1.595350f, 0.477402f, -0.058228f, -0.142797f, 0.721999f, 0.676998f, 0.375000f, 0.750000f, - 1.606965f, 0.467171f, -0.043396f, -0.282838f, 0.759561f, 0.585721f, 0.250000f, 0.875000f, - 1.570386f, 0.466248f, -0.054245f, -0.163533f, 0.526860f, 0.834072f, 0.375000f, 0.875000f, - 1.528455f, 0.465189f, -0.057861f, -0.006299f, 0.244403f, 0.969653f, 0.500000f, 0.875000f, - 1.536719f, 0.450000f, -0.052734f, -0.182345f, 0.368116f, 0.911724f, 0.375000f, 1.000000f, - 1.459619f, 0.479773f, -0.056250f, -0.031626f, 0.999471f, 0.007532f, 0.750000f, 0.500000f, - 1.548340f, 0.475708f, -0.062109f, -0.020139f, 0.565841f, 0.824268f, 0.500000f, 0.750000f, - 1.460321f, 0.472536f, -0.046582f, 0.390568f, 0.119605f, 0.912771f, 0.750000f, 0.750000f, - 1.420312f, 0.471094f, -0.000000f, 0.948684f, -0.316227f, 0.000000f, 1.000000f, 0.750000f, - 1.431250f, 0.450000f, -0.042188f, 0.367398f, -0.570170f, 0.734796f, 0.750000f, 1.000000f, - 1.507916f, 0.481462f, -0.070312f, -0.038808f, 0.999007f, -0.021872f, 0.625000f, 0.500000f, - 1.559876f, 0.481723f, -0.068115f, -0.033383f, 0.880730f, 0.472440f, 0.500000f, 0.625000f, - 1.508271f, 0.479756f, -0.063858f, 0.060846f, 0.841199f, 0.537292f, 0.625000f, 0.625000f, - 1.463255f, 0.478041f, -0.051086f, 0.212315f, 0.799230f, 0.562276f, 0.750000f, 0.625000f, - 1.501330f, 0.474014f, -0.058228f, 0.144240f, 0.376853f, 0.914974f, 0.625000f, 0.750000f, - 1.425458f, 0.478578f, -0.032812f, -0.012465f, 0.999726f, 0.019790f, 0.875000f, 0.500000f, - 1.463255f, 0.478041f, -0.051086f, 0.212314f, 0.799230f, 0.562276f, 0.750000f, 0.625000f, - 1.431414f, 0.476827f, -0.029800f, 0.465501f, 0.764644f, 0.445677f, 0.875000f, 0.625000f, - 1.419336f, 0.476367f, -0.000000f, 0.650788f, 0.759260f, -0.000000f, 1.000000f, 0.625000f, - 1.431315f, 0.471490f, -0.027173f, 0.736016f, -0.156276f, 0.658680f, 0.875000f, 0.750000f, - 1.501330f, 0.474014f, -0.058228f, 0.144240f, 0.376852f, 0.914974f, 0.625000f, 0.750000f, - 1.528455f, 0.465189f, -0.057861f, -0.006299f, 0.244403f, 0.969653f, 0.500000f, 0.875000f, - 1.486523f, 0.464130f, -0.054245f, 0.177936f, -0.047578f, 0.982891f, 0.625000f, 0.875000f, - 1.449944f, 0.463206f, -0.043396f, 0.394294f, -0.328020f, 0.858449f, 0.750000f, 0.875000f, - 1.463281f, 0.450000f, -0.052734f, 0.185972f, -0.317450f, 0.929860f, 0.625000f, 1.000000f, - 1.431315f, 0.471490f, -0.027173f, 0.736017f, -0.156259f, 0.658682f, 0.875000f, 0.750000f, - 1.449944f, 0.463206f, -0.043396f, 0.394296f, -0.328022f, 0.858448f, 0.750000f, 0.875000f, - 1.424072f, 0.462553f, -0.025314f, 0.619509f, -0.585423f, 0.522962f, 0.875000f, 0.875000f, - 1.414258f, 0.462305f, -0.000000f, 0.727013f, -0.686624f, 0.000000f, 1.000000f, 0.875000f, - 1.408594f, 0.450000f, -0.024609f, 0.530206f, -0.740826f, 0.412382f, 0.875000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.674579f, 0.299813f, 0.674579f, 0.000000f, 0.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.674579f, 0.299813f, 0.674579f, 1.000000f, 0.000000f, - 0.100000f, 0.600000f, -0.000000f, 0.600000f, 0.800000f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, 0.600000f, 0.100000f, 0.000000f, 0.800000f, 0.600000f, 1.000000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.674579f, 0.299813f, 0.674579f, 0.500000f, 0.000000f, - 0.162500f, 0.740625f, -0.000000f, 0.780869f, -0.624695f, 0.000000f, 0.000000f, 0.500000f, - 0.115516f, 0.740625f, 0.115516f, 0.553962f, -0.621492f, 0.553962f, 0.500000f, 0.500000f, - 0.000000f, 0.740625f, 0.162500f, 0.000000f, -0.624695f, 0.780869f, 1.000000f, 0.500000f, - 0.071000f, 0.600000f, 0.071000f, 0.427005f, 0.797078f, 0.427005f, 0.500000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.452928f, 0.872306f, 0.184222f, 0.250000f, 0.000000f, - 0.170313f, 0.800391f, -0.000000f, 0.600000f, 0.800000f, -0.000000f, 0.000000f, 0.250000f, - 0.157173f, 0.800391f, 0.067026f, 0.554284f, 0.799965f, 0.229837f, 0.250000f, 0.250000f, - 0.121080f, 0.800391f, 0.121080f, 0.422824f, 0.801523f, 0.422824f, 0.500000f, 0.250000f, - 0.149959f, 0.740625f, 0.063939f, 0.721237f, -0.624756f, 0.299162f, 0.250000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, 0.142954f, 0.989332f, 0.028025f, 0.125000f, 0.000000f, - 0.115039f, 0.818408f, -0.000000f, 0.152452f, 0.988311f, -0.000000f, 0.000000f, 0.125000f, - 0.112750f, 0.818408f, 0.023522f, 0.149493f, 0.988317f, 0.029677f, 0.125000f, 0.125000f, - 0.106164f, 0.818408f, 0.045274f, 0.140386f, 0.988384f, 0.058210f, 0.250000f, 0.125000f, - 0.166924f, 0.800391f, 0.034822f, 0.588416f, 0.800075f, 0.116818f, 0.125000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, 0.120585f, 0.989432f, 0.080516f, 0.375000f, 0.000000f, - 0.106164f, 0.818408f, 0.045274f, 0.140386f, 0.988384f, 0.058209f, 0.250000f, 0.125000f, - 0.095702f, 0.818408f, 0.064836f, 0.126226f, 0.988401f, 0.084441f, 0.375000f, 0.125000f, - 0.081785f, 0.818408f, 0.081785f, 0.107233f, 0.988434f, 0.107233f, 0.500000f, 0.125000f, - 0.141684f, 0.800391f, 0.095986f, 0.497465f, 0.801110f, 0.332794f, 0.375000f, 0.250000f, - 0.166924f, 0.800391f, 0.034822f, 0.588416f, 0.800075f, 0.116818f, 0.125000f, 0.250000f, - 0.181055f, 0.773584f, -0.000000f, 0.978147f, -0.207916f, 0.000000f, 0.000000f, 0.375000f, - 0.177452f, 0.773584f, 0.037016f, 0.959398f, -0.208008f, 0.190496f, 0.125000f, 0.375000f, - 0.167085f, 0.773584f, 0.071249f, 0.903388f, -0.208673f, 0.374628f, 0.250000f, 0.375000f, - 0.159265f, 0.740625f, 0.033217f, 0.765799f, -0.624831f, 0.152111f, 0.125000f, 0.500000f, - 0.141684f, 0.800391f, 0.095986f, 0.497465f, 0.801110f, 0.332794f, 0.375000f, 0.250000f, - 0.167085f, 0.773584f, 0.071249f, 0.903388f, -0.208673f, 0.374627f, 0.250000f, 0.375000f, - 0.150618f, 0.773584f, 0.102036f, 0.812814f, -0.208889f, 0.543782f, 0.375000f, 0.375000f, - 0.128714f, 0.773584f, 0.128714f, 0.691459f, -0.209208f, 0.691459f, 0.500000f, 0.375000f, - 0.135177f, 0.740625f, 0.091571f, 0.647897f, -0.626344f, 0.433501f, 0.375000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, 0.184222f, 0.872306f, 0.452928f, 0.750000f, 0.000000f, - 0.121080f, 0.800391f, 0.121080f, 0.422824f, 0.801523f, 0.422824f, 0.500000f, 0.250000f, - 0.067026f, 0.800391f, 0.157173f, 0.229949f, 0.799746f, 0.554553f, 0.750000f, 0.250000f, - 0.000000f, 0.800391f, 0.170313f, 0.000000f, 0.800000f, 0.600000f, 1.000000f, 0.250000f, - 0.063939f, 0.740625f, 0.149959f, 0.299246f, -0.624481f, 0.721440f, 0.750000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, 0.080516f, 0.989432f, 0.120585f, 0.625000f, 0.000000f, - 0.081785f, 0.818408f, 0.081785f, 0.107233f, 0.988434f, 0.107233f, 0.500000f, 0.125000f, - 0.064836f, 0.818408f, 0.095702f, 0.084445f, 0.988400f, 0.126232f, 0.625000f, 0.125000f, - 0.045274f, 0.818408f, 0.106164f, 0.058209f, 0.988384f, 0.140386f, 0.750000f, 0.125000f, - 0.095986f, 0.800391f, 0.141684f, 0.332805f, 0.801096f, 0.497480f, 0.625000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, 0.028025f, 0.989332f, 0.142954f, 0.875000f, 0.000000f, - 0.045274f, 0.818408f, 0.106164f, 0.058210f, 0.988384f, 0.140386f, 0.750000f, 0.125000f, - 0.023522f, 0.818408f, 0.112750f, 0.029681f, 0.988314f, 0.149513f, 0.875000f, 0.125000f, - 0.000000f, 0.818408f, 0.115039f, 0.000000f, 0.988311f, 0.152452f, 1.000000f, 0.125000f, - 0.034822f, 0.800391f, 0.166924f, 0.116828f, 0.800035f, 0.588468f, 0.875000f, 0.250000f, - 0.095986f, 0.800391f, 0.141684f, 0.332805f, 0.801096f, 0.497480f, 0.625000f, 0.250000f, - 0.128714f, 0.773584f, 0.128714f, 0.691459f, -0.209208f, 0.691459f, 0.500000f, 0.375000f, - 0.102036f, 0.773584f, 0.150618f, 0.543783f, -0.208883f, 0.812815f, 0.625000f, 0.375000f, - 0.071249f, 0.773584f, 0.167085f, 0.374627f, -0.208673f, 0.903388f, 0.750000f, 0.375000f, - 0.091571f, 0.740625f, 0.135177f, 0.433508f, -0.626329f, 0.647907f, 0.625000f, 0.500000f, - 0.034822f, 0.800391f, 0.166924f, 0.116828f, 0.800035f, 0.588468f, 0.875000f, 0.250000f, - 0.071249f, 0.773584f, 0.167085f, 0.374628f, -0.208673f, 0.903388f, 0.750000f, 0.375000f, - 0.037016f, 0.773584f, 0.177452f, 0.190497f, -0.207986f, 0.959402f, 0.875000f, 0.375000f, - 0.000000f, 0.773584f, 0.181055f, 0.000000f, -0.207916f, 0.978147f, 1.000000f, 0.375000f, - 0.033217f, 0.740625f, 0.159265f, 0.152118f, -0.624784f, 0.765837f, 0.875000f, 0.500000f, - 0.149959f, 0.740625f, 0.063939f, 0.721237f, -0.624756f, 0.299162f, 0.250000f, 0.500000f, - 0.098437f, 0.666797f, -0.000000f, 0.819843f, -0.572589f, 0.000000f, 0.000000f, 0.750000f, - 0.090828f, 0.666797f, 0.038696f, 0.756991f, -0.572775f, 0.314474f, 0.250000f, 0.750000f, - 0.069943f, 0.666797f, 0.069943f, 0.578481f, -0.575083f, 0.578480f, 0.500000f, 0.750000f, - 0.092250f, 0.600000f, 0.039250f, 0.554119f, 0.799779f, 0.230883f, 0.250000f, 1.000000f, - 0.159265f, 0.740625f, 0.033217f, 0.765799f, -0.624831f, 0.152111f, 0.125000f, 0.500000f, - 0.129883f, 0.704150f, -0.000000f, 0.733920f, -0.679236f, 0.000000f, 0.000000f, 0.625000f, - 0.127296f, 0.704150f, 0.026539f, 0.719711f, -0.679374f, 0.143067f, 0.125000f, 0.625000f, - 0.119854f, 0.704150f, 0.051090f, 0.676763f, -0.680523f, 0.280858f, 0.250000f, 0.625000f, - 0.096475f, 0.666797f, 0.020097f, 0.803930f, -0.572768f, 0.160103f, 0.125000f, 0.750000f, - 0.135177f, 0.740625f, 0.091571f, 0.647897f, -0.626344f, 0.433501f, 0.375000f, 0.500000f, - 0.119854f, 0.704150f, 0.051090f, 0.676763f, -0.680523f, 0.280858f, 0.250000f, 0.625000f, - 0.108035f, 0.704150f, 0.073175f, 0.608679f, -0.680856f, 0.407364f, 0.375000f, 0.625000f, - 0.092316f, 0.704150f, 0.092316f, 0.517530f, -0.681414f, 0.517530f, 0.500000f, 0.625000f, - 0.081863f, 0.666797f, 0.055433f, 0.680115f, -0.574467f, 0.455446f, 0.375000f, 0.750000f, - 0.096475f, 0.666797f, 0.020097f, 0.803930f, -0.572768f, 0.160103f, 0.125000f, 0.750000f, - 0.083398f, 0.631201f, -0.000000f, 0.998653f, -0.051878f, 0.000000f, 0.000000f, 0.875000f, - 0.081732f, 0.631201f, 0.017004f, 0.979312f, -0.052085f, 0.195539f, 0.125000f, 0.875000f, - 0.076941f, 0.631201f, 0.032751f, 0.921944f, -0.052662f, 0.383727f, 0.250000f, 0.875000f, - 0.098000f, 0.600000f, 0.020375f, 0.588328f, 0.800016f, 0.117666f, 0.125000f, 1.000000f, - 0.081863f, 0.666797f, 0.055433f, 0.680115f, -0.574467f, 0.455446f, 0.375000f, 0.750000f, - 0.076941f, 0.631201f, 0.032751f, 0.921944f, -0.052662f, 0.383728f, 0.250000f, 0.875000f, - 0.069336f, 0.631201f, 0.046930f, 0.829512f, -0.053050f, 0.555963f, 0.375000f, 0.875000f, - 0.059228f, 0.631201f, 0.059228f, 0.706103f, -0.053279f, 0.706102f, 0.500000f, 0.875000f, - 0.083125f, 0.600000f, 0.056250f, 0.497431f, 0.800807f, 0.333571f, 0.375000f, 1.000000f, - 0.063939f, 0.740625f, 0.149959f, 0.299246f, -0.624480f, 0.721440f, 0.750000f, 0.500000f, - 0.069943f, 0.666797f, 0.069943f, 0.578480f, -0.575083f, 0.578481f, 0.500000f, 0.750000f, - 0.038696f, 0.666797f, 0.090828f, 0.314542f, -0.572521f, 0.757155f, 0.750000f, 0.750000f, - 0.000000f, 0.666797f, 0.098437f, 0.000000f, -0.572589f, 0.819843f, 1.000000f, 0.750000f, - 0.039250f, 0.600000f, 0.092250f, 0.230996f, 0.799557f, 0.554392f, 0.750000f, 1.000000f, - 0.091571f, 0.740625f, 0.135177f, 0.433508f, -0.626329f, 0.647907f, 0.625000f, 0.500000f, - 0.092316f, 0.704150f, 0.092316f, 0.517530f, -0.681414f, 0.517530f, 0.500000f, 0.625000f, - 0.073175f, 0.704150f, 0.108035f, 0.407370f, -0.680843f, 0.608689f, 0.625000f, 0.625000f, - 0.051090f, 0.704150f, 0.119854f, 0.280858f, -0.680523f, 0.676763f, 0.750000f, 0.625000f, - 0.055433f, 0.666797f, 0.081863f, 0.455449f, -0.574459f, 0.680120f, 0.625000f, 0.750000f, - 0.033217f, 0.740625f, 0.159265f, 0.152118f, -0.624783f, 0.765837f, 0.875000f, 0.500000f, - 0.051090f, 0.704150f, 0.119854f, 0.280858f, -0.680523f, 0.676763f, 0.750000f, 0.625000f, - 0.026539f, 0.704150f, 0.127296f, 0.143075f, -0.679330f, 0.719750f, 0.875000f, 0.625000f, - 0.000000f, 0.704150f, 0.129883f, 0.000000f, -0.679236f, 0.733920f, 1.000000f, 0.625000f, - 0.020097f, 0.666797f, 0.096475f, 0.160109f, -0.572729f, 0.803957f, 0.875000f, 0.750000f, - 0.055433f, 0.666797f, 0.081863f, 0.455449f, -0.574459f, 0.680120f, 0.625000f, 0.750000f, - 0.059228f, 0.631201f, 0.059228f, 0.706102f, -0.053279f, 0.706103f, 0.500000f, 0.875000f, - 0.046930f, 0.631201f, 0.069336f, 0.555963f, -0.053067f, 0.829512f, 0.625000f, 0.875000f, - 0.032751f, 0.631201f, 0.076941f, 0.383728f, -0.052662f, 0.921944f, 0.750000f, 0.875000f, - 0.056250f, 0.600000f, 0.083125f, 0.333582f, 0.800793f, 0.497447f, 0.625000f, 1.000000f, - 0.020097f, 0.666797f, 0.096475f, 0.160109f, -0.572729f, 0.803957f, 0.875000f, 0.750000f, - 0.032751f, 0.631201f, 0.076941f, 0.383727f, -0.052662f, 0.921944f, 0.750000f, 0.875000f, - 0.017004f, 0.631201f, 0.081732f, 0.195539f, -0.052105f, 0.979311f, 0.875000f, 0.875000f, - 0.000000f, 0.631201f, 0.083398f, 0.000000f, -0.051878f, 0.998653f, 1.000000f, 0.875000f, - 0.020375f, 0.600000f, 0.098000f, 0.117676f, 0.799975f, 0.588381f, 0.875000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.674579f, 0.299813f, 0.674579f, 0.000000f, 0.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.674579f, 0.299813f, 0.674579f, 1.000000f, 0.000000f, - 0.000000f, 0.600000f, 0.100000f, 0.000000f, 0.800000f, 0.600000f, 0.000000f, 1.000000f, - -0.100000f, 0.600000f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 1.000000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.674579f, 0.299813f, 0.674579f, 0.500000f, 0.000000f, - 0.000000f, 0.740625f, 0.162500f, 0.000000f, -0.624695f, 0.780869f, 0.000000f, 0.500000f, - -0.115516f, 0.740625f, 0.115516f, -0.553962f, -0.621492f, 0.553962f, 0.500000f, 0.500000f, - -0.162500f, 0.740625f, -0.000000f, -0.780869f, -0.624695f, -0.000000f, 1.000000f, 0.500000f, - -0.071000f, 0.600000f, 0.071000f, -0.427005f, 0.797078f, 0.427005f, 0.500000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.184222f, 0.872306f, 0.452928f, 0.250000f, 0.000000f, - 0.000000f, 0.800391f, 0.170313f, 0.000000f, 0.800000f, 0.600000f, 0.000000f, 0.250000f, - -0.067026f, 0.800391f, 0.157173f, -0.229837f, 0.799965f, 0.554284f, 0.250000f, 0.250000f, - -0.121080f, 0.800391f, 0.121080f, -0.422824f, 0.801523f, 0.422824f, 0.500000f, 0.250000f, - -0.063939f, 0.740625f, 0.149959f, -0.299162f, -0.624756f, 0.721237f, 0.250000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, -0.028025f, 0.989332f, 0.142954f, 0.125000f, 0.000000f, - 0.000000f, 0.818408f, 0.115039f, 0.000000f, 0.988311f, 0.152452f, 0.000000f, 0.125000f, - -0.023522f, 0.818408f, 0.112750f, -0.029677f, 0.988317f, 0.149493f, 0.125000f, 0.125000f, - -0.045274f, 0.818408f, 0.106164f, -0.058210f, 0.988384f, 0.140386f, 0.250000f, 0.125000f, - -0.034822f, 0.800391f, 0.166924f, -0.116818f, 0.800075f, 0.588416f, 0.125000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, -0.080516f, 0.989432f, 0.120585f, 0.375000f, 0.000000f, - -0.045274f, 0.818408f, 0.106164f, -0.058209f, 0.988384f, 0.140386f, 0.250000f, 0.125000f, - -0.064836f, 0.818408f, 0.095702f, -0.084441f, 0.988401f, 0.126226f, 0.375000f, 0.125000f, - -0.081785f, 0.818408f, 0.081785f, -0.107233f, 0.988434f, 0.107233f, 0.500000f, 0.125000f, - -0.095986f, 0.800391f, 0.141684f, -0.332794f, 0.801110f, 0.497465f, 0.375000f, 0.250000f, - -0.034822f, 0.800391f, 0.166924f, -0.116818f, 0.800075f, 0.588416f, 0.125000f, 0.250000f, - 0.000000f, 0.773584f, 0.181055f, 0.000000f, -0.207916f, 0.978147f, 0.000000f, 0.375000f, - -0.037016f, 0.773584f, 0.177452f, -0.190496f, -0.208008f, 0.959398f, 0.125000f, 0.375000f, - -0.071249f, 0.773584f, 0.167085f, -0.374628f, -0.208673f, 0.903388f, 0.250000f, 0.375000f, - -0.033217f, 0.740625f, 0.159265f, -0.152111f, -0.624831f, 0.765799f, 0.125000f, 0.500000f, - -0.095986f, 0.800391f, 0.141684f, -0.332794f, 0.801110f, 0.497465f, 0.375000f, 0.250000f, - -0.071249f, 0.773584f, 0.167085f, -0.374627f, -0.208673f, 0.903388f, 0.250000f, 0.375000f, - -0.102036f, 0.773584f, 0.150618f, -0.543782f, -0.208889f, 0.812814f, 0.375000f, 0.375000f, - -0.128714f, 0.773584f, 0.128714f, -0.691459f, -0.209208f, 0.691459f, 0.500000f, 0.375000f, - -0.091571f, 0.740625f, 0.135177f, -0.433501f, -0.626344f, 0.647897f, 0.375000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, -0.452928f, 0.872306f, 0.184222f, 0.750000f, 0.000000f, - -0.121080f, 0.800391f, 0.121080f, -0.422824f, 0.801523f, 0.422824f, 0.500000f, 0.250000f, - -0.157173f, 0.800391f, 0.067026f, -0.554553f, 0.799746f, 0.229949f, 0.750000f, 0.250000f, - -0.170313f, 0.800391f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 1.000000f, 0.250000f, - -0.149959f, 0.740625f, 0.063939f, -0.721440f, -0.624481f, 0.299246f, 0.750000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, -0.120585f, 0.989432f, 0.080516f, 0.625000f, 0.000000f, - -0.081785f, 0.818408f, 0.081785f, -0.107233f, 0.988434f, 0.107233f, 0.500000f, 0.125000f, - -0.095702f, 0.818408f, 0.064836f, -0.126232f, 0.988400f, 0.084445f, 0.625000f, 0.125000f, - -0.106164f, 0.818408f, 0.045274f, -0.140386f, 0.988384f, 0.058209f, 0.750000f, 0.125000f, - -0.141684f, 0.800391f, 0.095986f, -0.497480f, 0.801096f, 0.332805f, 0.625000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, -0.142954f, 0.989332f, 0.028025f, 0.875000f, 0.000000f, - -0.106164f, 0.818408f, 0.045274f, -0.140386f, 0.988384f, 0.058210f, 0.750000f, 0.125000f, - -0.112750f, 0.818408f, 0.023522f, -0.149513f, 0.988314f, 0.029681f, 0.875000f, 0.125000f, - -0.115039f, 0.818408f, -0.000000f, -0.152452f, 0.988311f, 0.000000f, 1.000000f, 0.125000f, - -0.166924f, 0.800391f, 0.034822f, -0.588468f, 0.800035f, 0.116828f, 0.875000f, 0.250000f, - -0.141684f, 0.800391f, 0.095986f, -0.497480f, 0.801096f, 0.332805f, 0.625000f, 0.250000f, - -0.128714f, 0.773584f, 0.128714f, -0.691459f, -0.209208f, 0.691459f, 0.500000f, 0.375000f, - -0.150618f, 0.773584f, 0.102036f, -0.812815f, -0.208883f, 0.543783f, 0.625000f, 0.375000f, - -0.167085f, 0.773584f, 0.071249f, -0.903388f, -0.208673f, 0.374627f, 0.750000f, 0.375000f, - -0.135177f, 0.740625f, 0.091571f, -0.647907f, -0.626329f, 0.433508f, 0.625000f, 0.500000f, - -0.166924f, 0.800391f, 0.034822f, -0.588468f, 0.800035f, 0.116828f, 0.875000f, 0.250000f, - -0.167085f, 0.773584f, 0.071249f, -0.903388f, -0.208673f, 0.374628f, 0.750000f, 0.375000f, - -0.177452f, 0.773584f, 0.037016f, -0.959402f, -0.207986f, 0.190497f, 0.875000f, 0.375000f, - -0.181055f, 0.773584f, -0.000000f, -0.978147f, -0.207916f, -0.000000f, 1.000000f, 0.375000f, - -0.159265f, 0.740625f, 0.033217f, -0.765837f, -0.624784f, 0.152118f, 0.875000f, 0.500000f, - -0.063939f, 0.740625f, 0.149959f, -0.299162f, -0.624756f, 0.721237f, 0.250000f, 0.500000f, - 0.000000f, 0.666797f, 0.098437f, 0.000000f, -0.572589f, 0.819843f, 0.000000f, 0.750000f, - -0.038696f, 0.666797f, 0.090828f, -0.314474f, -0.572775f, 0.756991f, 0.250000f, 0.750000f, - -0.069943f, 0.666797f, 0.069943f, -0.578480f, -0.575083f, 0.578481f, 0.500000f, 0.750000f, - -0.039250f, 0.600000f, 0.092250f, -0.230883f, 0.799779f, 0.554119f, 0.250000f, 1.000000f, - -0.033217f, 0.740625f, 0.159265f, -0.152111f, -0.624831f, 0.765799f, 0.125000f, 0.500000f, - 0.000000f, 0.704150f, 0.129883f, 0.000000f, -0.679236f, 0.733920f, 0.000000f, 0.625000f, - -0.026539f, 0.704150f, 0.127296f, -0.143067f, -0.679374f, 0.719711f, 0.125000f, 0.625000f, - -0.051090f, 0.704150f, 0.119854f, -0.280858f, -0.680523f, 0.676763f, 0.250000f, 0.625000f, - -0.020097f, 0.666797f, 0.096475f, -0.160103f, -0.572768f, 0.803930f, 0.125000f, 0.750000f, - -0.091571f, 0.740625f, 0.135177f, -0.433501f, -0.626344f, 0.647897f, 0.375000f, 0.500000f, - -0.051090f, 0.704150f, 0.119854f, -0.280858f, -0.680523f, 0.676763f, 0.250000f, 0.625000f, - -0.073175f, 0.704150f, 0.108035f, -0.407364f, -0.680856f, 0.608679f, 0.375000f, 0.625000f, - -0.092316f, 0.704150f, 0.092316f, -0.517530f, -0.681414f, 0.517530f, 0.500000f, 0.625000f, - -0.055433f, 0.666797f, 0.081863f, -0.455446f, -0.574467f, 0.680115f, 0.375000f, 0.750000f, - -0.020097f, 0.666797f, 0.096475f, -0.160103f, -0.572768f, 0.803930f, 0.125000f, 0.750000f, - 0.000000f, 0.631201f, 0.083398f, 0.000000f, -0.051878f, 0.998653f, 0.000000f, 0.875000f, - -0.017004f, 0.631201f, 0.081732f, -0.195539f, -0.052085f, 0.979312f, 0.125000f, 0.875000f, - -0.032751f, 0.631201f, 0.076941f, -0.383727f, -0.052662f, 0.921944f, 0.250000f, 0.875000f, - -0.020375f, 0.600000f, 0.098000f, -0.117666f, 0.800016f, 0.588328f, 0.125000f, 1.000000f, - -0.055433f, 0.666797f, 0.081863f, -0.455446f, -0.574467f, 0.680115f, 0.375000f, 0.750000f, - -0.032751f, 0.631201f, 0.076941f, -0.383728f, -0.052662f, 0.921944f, 0.250000f, 0.875000f, - -0.046930f, 0.631201f, 0.069336f, -0.555963f, -0.053050f, 0.829512f, 0.375000f, 0.875000f, - -0.059228f, 0.631201f, 0.059228f, -0.706102f, -0.053279f, 0.706103f, 0.500000f, 0.875000f, - -0.056250f, 0.600000f, 0.083125f, -0.333571f, 0.800807f, 0.497431f, 0.375000f, 1.000000f, - -0.149959f, 0.740625f, 0.063939f, -0.721440f, -0.624480f, 0.299246f, 0.750000f, 0.500000f, - -0.069943f, 0.666797f, 0.069943f, -0.578481f, -0.575083f, 0.578480f, 0.500000f, 0.750000f, - -0.090828f, 0.666797f, 0.038696f, -0.757155f, -0.572521f, 0.314542f, 0.750000f, 0.750000f, - -0.098437f, 0.666797f, -0.000000f, -0.819843f, -0.572589f, -0.000000f, 1.000000f, 0.750000f, - -0.092250f, 0.600000f, 0.039250f, -0.554392f, 0.799557f, 0.230996f, 0.750000f, 1.000000f, - -0.135177f, 0.740625f, 0.091571f, -0.647907f, -0.626329f, 0.433508f, 0.625000f, 0.500000f, - -0.092316f, 0.704150f, 0.092316f, -0.517530f, -0.681414f, 0.517530f, 0.500000f, 0.625000f, - -0.108035f, 0.704150f, 0.073175f, -0.608689f, -0.680843f, 0.407370f, 0.625000f, 0.625000f, - -0.119854f, 0.704150f, 0.051090f, -0.676763f, -0.680523f, 0.280858f, 0.750000f, 0.625000f, - -0.081863f, 0.666797f, 0.055433f, -0.680120f, -0.574459f, 0.455449f, 0.625000f, 0.750000f, - -0.159265f, 0.740625f, 0.033217f, -0.765837f, -0.624783f, 0.152118f, 0.875000f, 0.500000f, - -0.119854f, 0.704150f, 0.051090f, -0.676763f, -0.680523f, 0.280858f, 0.750000f, 0.625000f, - -0.127296f, 0.704150f, 0.026539f, -0.719750f, -0.679330f, 0.143075f, 0.875000f, 0.625000f, - -0.129883f, 0.704150f, -0.000000f, -0.733920f, -0.679236f, -0.000000f, 1.000000f, 0.625000f, - -0.096475f, 0.666797f, 0.020097f, -0.803957f, -0.572729f, 0.160109f, 0.875000f, 0.750000f, - -0.081863f, 0.666797f, 0.055433f, -0.680120f, -0.574459f, 0.455449f, 0.625000f, 0.750000f, - -0.059228f, 0.631201f, 0.059228f, -0.706103f, -0.053279f, 0.706102f, 0.500000f, 0.875000f, - -0.069336f, 0.631201f, 0.046930f, -0.829512f, -0.053067f, 0.555963f, 0.625000f, 0.875000f, - -0.076941f, 0.631201f, 0.032751f, -0.921944f, -0.052662f, 0.383728f, 0.750000f, 0.875000f, - -0.083125f, 0.600000f, 0.056250f, -0.497447f, 0.800793f, 0.333582f, 0.625000f, 1.000000f, - -0.096475f, 0.666797f, 0.020097f, -0.803957f, -0.572729f, 0.160109f, 0.875000f, 0.750000f, - -0.076941f, 0.631201f, 0.032751f, -0.921944f, -0.052662f, 0.383727f, 0.750000f, 0.875000f, - -0.081732f, 0.631201f, 0.017004f, -0.979311f, -0.052105f, 0.195539f, 0.875000f, 0.875000f, - -0.083398f, 0.631201f, -0.000000f, -0.998653f, -0.051878f, -0.000000f, 1.000000f, 0.875000f, - -0.098000f, 0.600000f, 0.020375f, -0.588381f, 0.799975f, 0.117676f, 0.875000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.674579f, 0.299813f, -0.674579f, 0.000000f, 0.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.674579f, 0.299813f, -0.674579f, 1.000000f, 0.000000f, - -0.100000f, 0.600000f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 0.000000f, 1.000000f, - 0.000000f, 0.600000f, -0.100000f, 0.000000f, 0.800000f, -0.600000f, 1.000000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.674579f, 0.299813f, -0.674579f, 0.500000f, 0.000000f, - -0.162500f, 0.740625f, -0.000000f, -0.780869f, -0.624695f, -0.000000f, 0.000000f, 0.500000f, - -0.115516f, 0.740625f, -0.115516f, -0.553962f, -0.621492f, -0.553962f, 0.500000f, 0.500000f, - 0.000000f, 0.740625f, -0.162500f, 0.000000f, -0.624695f, -0.780869f, 1.000000f, 0.500000f, - -0.071000f, 0.600000f, -0.071000f, -0.427005f, 0.797078f, -0.427005f, 0.500000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, -0.452928f, 0.872306f, -0.184222f, 0.250000f, 0.000000f, - -0.170313f, 0.800391f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 0.000000f, 0.250000f, - -0.157173f, 0.800391f, -0.067026f, -0.554284f, 0.799965f, -0.229837f, 0.250000f, 0.250000f, - -0.121080f, 0.800391f, -0.121080f, -0.422824f, 0.801523f, -0.422824f, 0.500000f, 0.250000f, - -0.149959f, 0.740625f, -0.063939f, -0.721237f, -0.624756f, -0.299162f, 0.250000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, -0.142954f, 0.989332f, -0.028025f, 0.125000f, 0.000000f, - -0.115039f, 0.818408f, -0.000000f, -0.152452f, 0.988311f, 0.000000f, 0.000000f, 0.125000f, - -0.112750f, 0.818408f, -0.023522f, -0.149493f, 0.988317f, -0.029677f, 0.125000f, 0.125000f, - -0.106164f, 0.818408f, -0.045274f, -0.140386f, 0.988384f, -0.058210f, 0.250000f, 0.125000f, - -0.166924f, 0.800391f, -0.034822f, -0.588416f, 0.800075f, -0.116818f, 0.125000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, -0.120585f, 0.989432f, -0.080516f, 0.375000f, 0.000000f, - -0.106164f, 0.818408f, -0.045274f, -0.140386f, 0.988384f, -0.058209f, 0.250000f, 0.125000f, - -0.095702f, 0.818408f, -0.064836f, -0.126226f, 0.988401f, -0.084441f, 0.375000f, 0.125000f, - -0.081785f, 0.818408f, -0.081785f, -0.107233f, 0.988434f, -0.107233f, 0.500000f, 0.125000f, - -0.141684f, 0.800391f, -0.095986f, -0.497465f, 0.801110f, -0.332794f, 0.375000f, 0.250000f, - -0.166924f, 0.800391f, -0.034822f, -0.588416f, 0.800075f, -0.116818f, 0.125000f, 0.250000f, - -0.181055f, 0.773584f, -0.000000f, -0.978147f, -0.207916f, -0.000000f, 0.000000f, 0.375000f, - -0.177452f, 0.773584f, -0.037016f, -0.959398f, -0.208008f, -0.190496f, 0.125000f, 0.375000f, - -0.167085f, 0.773584f, -0.071249f, -0.903388f, -0.208673f, -0.374628f, 0.250000f, 0.375000f, - -0.159265f, 0.740625f, -0.033217f, -0.765799f, -0.624831f, -0.152111f, 0.125000f, 0.500000f, - -0.141684f, 0.800391f, -0.095986f, -0.497465f, 0.801110f, -0.332794f, 0.375000f, 0.250000f, - -0.167085f, 0.773584f, -0.071249f, -0.903388f, -0.208673f, -0.374627f, 0.250000f, 0.375000f, - -0.150618f, 0.773584f, -0.102036f, -0.812814f, -0.208889f, -0.543782f, 0.375000f, 0.375000f, - -0.128714f, 0.773584f, -0.128714f, -0.691459f, -0.209208f, -0.691459f, 0.500000f, 0.375000f, - -0.135177f, 0.740625f, -0.091571f, -0.647897f, -0.626344f, -0.433501f, 0.375000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, -0.184222f, 0.872306f, -0.452928f, 0.750000f, 0.000000f, - -0.121080f, 0.800391f, -0.121080f, -0.422824f, 0.801523f, -0.422824f, 0.500000f, 0.250000f, - -0.067026f, 0.800391f, -0.157173f, -0.229949f, 0.799746f, -0.554553f, 0.750000f, 0.250000f, - 0.000000f, 0.800391f, -0.170313f, 0.000000f, 0.800000f, -0.600000f, 1.000000f, 0.250000f, - -0.063939f, 0.740625f, -0.149959f, -0.299246f, -0.624481f, -0.721440f, 0.750000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, -0.080516f, 0.989432f, -0.120585f, 0.625000f, 0.000000f, - -0.081785f, 0.818408f, -0.081785f, -0.107233f, 0.988434f, -0.107233f, 0.500000f, 0.125000f, - -0.064836f, 0.818408f, -0.095702f, -0.084445f, 0.988400f, -0.126232f, 0.625000f, 0.125000f, - -0.045274f, 0.818408f, -0.106164f, -0.058209f, 0.988384f, -0.140386f, 0.750000f, 0.125000f, - -0.095986f, 0.800391f, -0.141684f, -0.332805f, 0.801096f, -0.497480f, 0.625000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, -0.028025f, 0.989332f, -0.142954f, 0.875000f, 0.000000f, - -0.045274f, 0.818408f, -0.106164f, -0.058210f, 0.988384f, -0.140386f, 0.750000f, 0.125000f, - -0.023522f, 0.818408f, -0.112750f, -0.029681f, 0.988314f, -0.149513f, 0.875000f, 0.125000f, - 0.000000f, 0.818408f, -0.115039f, 0.000000f, 0.988311f, -0.152452f, 1.000000f, 0.125000f, - -0.034822f, 0.800391f, -0.166924f, -0.116828f, 0.800035f, -0.588468f, 0.875000f, 0.250000f, - -0.095986f, 0.800391f, -0.141684f, -0.332805f, 0.801096f, -0.497480f, 0.625000f, 0.250000f, - -0.128714f, 0.773584f, -0.128714f, -0.691459f, -0.209208f, -0.691459f, 0.500000f, 0.375000f, - -0.102036f, 0.773584f, -0.150618f, -0.543783f, -0.208883f, -0.812815f, 0.625000f, 0.375000f, - -0.071249f, 0.773584f, -0.167085f, -0.374627f, -0.208673f, -0.903388f, 0.750000f, 0.375000f, - -0.091571f, 0.740625f, -0.135177f, -0.433508f, -0.626329f, -0.647907f, 0.625000f, 0.500000f, - -0.034822f, 0.800391f, -0.166924f, -0.116828f, 0.800035f, -0.588468f, 0.875000f, 0.250000f, - -0.071249f, 0.773584f, -0.167085f, -0.374628f, -0.208673f, -0.903388f, 0.750000f, 0.375000f, - -0.037016f, 0.773584f, -0.177452f, -0.190497f, -0.207986f, -0.959402f, 0.875000f, 0.375000f, - 0.000000f, 0.773584f, -0.181055f, 0.000000f, -0.207916f, -0.978147f, 1.000000f, 0.375000f, - -0.033217f, 0.740625f, -0.159265f, -0.152118f, -0.624784f, -0.765837f, 0.875000f, 0.500000f, - -0.149959f, 0.740625f, -0.063939f, -0.721237f, -0.624756f, -0.299162f, 0.250000f, 0.500000f, - -0.098437f, 0.666797f, -0.000000f, -0.819843f, -0.572589f, -0.000000f, 0.000000f, 0.750000f, - -0.090828f, 0.666797f, -0.038696f, -0.756991f, -0.572775f, -0.314474f, 0.250000f, 0.750000f, - -0.069943f, 0.666797f, -0.069943f, -0.578481f, -0.575083f, -0.578480f, 0.500000f, 0.750000f, - -0.092250f, 0.600000f, -0.039250f, -0.554119f, 0.799779f, -0.230883f, 0.250000f, 1.000000f, - -0.159265f, 0.740625f, -0.033217f, -0.765799f, -0.624831f, -0.152111f, 0.125000f, 0.500000f, - -0.129883f, 0.704150f, -0.000000f, -0.733920f, -0.679236f, -0.000000f, 0.000000f, 0.625000f, - -0.127296f, 0.704150f, -0.026539f, -0.719711f, -0.679374f, -0.143067f, 0.125000f, 0.625000f, - -0.119854f, 0.704150f, -0.051090f, -0.676763f, -0.680523f, -0.280858f, 0.250000f, 0.625000f, - -0.096475f, 0.666797f, -0.020097f, -0.803930f, -0.572768f, -0.160103f, 0.125000f, 0.750000f, - -0.135177f, 0.740625f, -0.091571f, -0.647897f, -0.626344f, -0.433501f, 0.375000f, 0.500000f, - -0.119854f, 0.704150f, -0.051090f, -0.676763f, -0.680523f, -0.280858f, 0.250000f, 0.625000f, - -0.108035f, 0.704150f, -0.073175f, -0.608679f, -0.680856f, -0.407364f, 0.375000f, 0.625000f, - -0.092316f, 0.704150f, -0.092316f, -0.517530f, -0.681414f, -0.517530f, 0.500000f, 0.625000f, - -0.081863f, 0.666797f, -0.055433f, -0.680115f, -0.574467f, -0.455446f, 0.375000f, 0.750000f, - -0.096475f, 0.666797f, -0.020097f, -0.803930f, -0.572768f, -0.160103f, 0.125000f, 0.750000f, - -0.083398f, 0.631201f, -0.000000f, -0.998653f, -0.051878f, -0.000000f, 0.000000f, 0.875000f, - -0.081732f, 0.631201f, -0.017004f, -0.979312f, -0.052085f, -0.195539f, 0.125000f, 0.875000f, - -0.076941f, 0.631201f, -0.032751f, -0.921944f, -0.052662f, -0.383727f, 0.250000f, 0.875000f, - -0.098000f, 0.600000f, -0.020375f, -0.588328f, 0.800016f, -0.117666f, 0.125000f, 1.000000f, - -0.081863f, 0.666797f, -0.055433f, -0.680115f, -0.574467f, -0.455446f, 0.375000f, 0.750000f, - -0.076941f, 0.631201f, -0.032751f, -0.921944f, -0.052662f, -0.383728f, 0.250000f, 0.875000f, - -0.069336f, 0.631201f, -0.046930f, -0.829512f, -0.053050f, -0.555963f, 0.375000f, 0.875000f, - -0.059228f, 0.631201f, -0.059228f, -0.706103f, -0.053279f, -0.706102f, 0.500000f, 0.875000f, - -0.083125f, 0.600000f, -0.056250f, -0.497431f, 0.800807f, -0.333571f, 0.375000f, 1.000000f, - -0.063939f, 0.740625f, -0.149959f, -0.299246f, -0.624480f, -0.721440f, 0.750000f, 0.500000f, - -0.069943f, 0.666797f, -0.069943f, -0.578480f, -0.575083f, -0.578481f, 0.500000f, 0.750000f, - -0.038696f, 0.666797f, -0.090828f, -0.314542f, -0.572521f, -0.757155f, 0.750000f, 0.750000f, - 0.000000f, 0.666797f, -0.098437f, 0.000000f, -0.572589f, -0.819843f, 1.000000f, 0.750000f, - -0.039250f, 0.600000f, -0.092250f, -0.230996f, 0.799557f, -0.554392f, 0.750000f, 1.000000f, - -0.091571f, 0.740625f, -0.135177f, -0.433508f, -0.626329f, -0.647907f, 0.625000f, 0.500000f, - -0.092316f, 0.704150f, -0.092316f, -0.517530f, -0.681414f, -0.517530f, 0.500000f, 0.625000f, - -0.073175f, 0.704150f, -0.108035f, -0.407370f, -0.680843f, -0.608689f, 0.625000f, 0.625000f, - -0.051090f, 0.704150f, -0.119854f, -0.280858f, -0.680523f, -0.676763f, 0.750000f, 0.625000f, - -0.055433f, 0.666797f, -0.081863f, -0.455449f, -0.574459f, -0.680120f, 0.625000f, 0.750000f, - -0.033217f, 0.740625f, -0.159265f, -0.152118f, -0.624783f, -0.765837f, 0.875000f, 0.500000f, - -0.051090f, 0.704150f, -0.119854f, -0.280858f, -0.680523f, -0.676763f, 0.750000f, 0.625000f, - -0.026539f, 0.704150f, -0.127296f, -0.143075f, -0.679330f, -0.719750f, 0.875000f, 0.625000f, - 0.000000f, 0.704150f, -0.129883f, 0.000000f, -0.679236f, -0.733920f, 1.000000f, 0.625000f, - -0.020097f, 0.666797f, -0.096475f, -0.160109f, -0.572729f, -0.803957f, 0.875000f, 0.750000f, - -0.055433f, 0.666797f, -0.081863f, -0.455449f, -0.574459f, -0.680120f, 0.625000f, 0.750000f, - -0.059228f, 0.631201f, -0.059228f, -0.706102f, -0.053279f, -0.706103f, 0.500000f, 0.875000f, - -0.046930f, 0.631201f, -0.069336f, -0.555963f, -0.053067f, -0.829512f, 0.625000f, 0.875000f, - -0.032751f, 0.631201f, -0.076941f, -0.383728f, -0.052662f, -0.921944f, 0.750000f, 0.875000f, - -0.056250f, 0.600000f, -0.083125f, -0.333582f, 0.800793f, -0.497447f, 0.625000f, 1.000000f, - -0.020097f, 0.666797f, -0.096475f, -0.160109f, -0.572729f, -0.803957f, 0.875000f, 0.750000f, - -0.032751f, 0.631201f, -0.076941f, -0.383727f, -0.052662f, -0.921944f, 0.750000f, 0.875000f, - -0.017004f, 0.631201f, -0.081732f, -0.195539f, -0.052105f, -0.979311f, 0.875000f, 0.875000f, - 0.000000f, 0.631201f, -0.083398f, 0.000000f, -0.051878f, -0.998653f, 1.000000f, 0.875000f, - -0.020375f, 0.600000f, -0.098000f, -0.117676f, 0.799975f, -0.588381f, 0.875000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.674579f, 0.299813f, -0.674579f, 0.000000f, 0.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.674579f, 0.299813f, -0.674579f, 1.000000f, 0.000000f, - 0.000000f, 0.600000f, -0.100000f, 0.000000f, 0.800000f, -0.600000f, 0.000000f, 1.000000f, - 0.100000f, 0.600000f, -0.000000f, 0.600000f, 0.800000f, -0.000000f, 1.000000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.674579f, 0.299813f, -0.674579f, 0.500000f, 0.000000f, - 0.000000f, 0.740625f, -0.162500f, 0.000000f, -0.624695f, -0.780869f, 0.000000f, 0.500000f, - 0.115516f, 0.740625f, -0.115516f, 0.553962f, -0.621492f, -0.553962f, 0.500000f, 0.500000f, - 0.162500f, 0.740625f, -0.000000f, 0.780869f, -0.624695f, 0.000000f, 1.000000f, 0.500000f, - 0.071000f, 0.600000f, -0.071000f, 0.427005f, 0.797078f, -0.427005f, 0.500000f, 1.000000f, - 0.000000f, 0.825000f, -0.000000f, 0.184222f, 0.872306f, -0.452928f, 0.250000f, 0.000000f, - 0.000000f, 0.800391f, -0.170313f, 0.000000f, 0.800000f, -0.600000f, 0.000000f, 0.250000f, - 0.067026f, 0.800391f, -0.157173f, 0.229837f, 0.799965f, -0.554284f, 0.250000f, 0.250000f, - 0.121080f, 0.800391f, -0.121080f, 0.422824f, 0.801523f, -0.422824f, 0.500000f, 0.250000f, - 0.063939f, 0.740625f, -0.149959f, 0.299162f, -0.624756f, -0.721237f, 0.250000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, 0.028025f, 0.989332f, -0.142954f, 0.125000f, 0.000000f, - 0.000000f, 0.818408f, -0.115039f, 0.000000f, 0.988311f, -0.152452f, 0.000000f, 0.125000f, - 0.023522f, 0.818408f, -0.112750f, 0.029677f, 0.988317f, -0.149493f, 0.125000f, 0.125000f, - 0.045274f, 0.818408f, -0.106164f, 0.058210f, 0.988384f, -0.140386f, 0.250000f, 0.125000f, - 0.034822f, 0.800391f, -0.166924f, 0.116818f, 0.800075f, -0.588416f, 0.125000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, 0.080516f, 0.989432f, -0.120585f, 0.375000f, 0.000000f, - 0.045274f, 0.818408f, -0.106164f, 0.058209f, 0.988384f, -0.140386f, 0.250000f, 0.125000f, - 0.064836f, 0.818408f, -0.095702f, 0.084441f, 0.988401f, -0.126226f, 0.375000f, 0.125000f, - 0.081785f, 0.818408f, -0.081785f, 0.107233f, 0.988434f, -0.107233f, 0.500000f, 0.125000f, - 0.095986f, 0.800391f, -0.141684f, 0.332794f, 0.801110f, -0.497465f, 0.375000f, 0.250000f, - 0.034822f, 0.800391f, -0.166924f, 0.116818f, 0.800075f, -0.588416f, 0.125000f, 0.250000f, - 0.000000f, 0.773584f, -0.181055f, 0.000000f, -0.207916f, -0.978147f, 0.000000f, 0.375000f, - 0.037016f, 0.773584f, -0.177452f, 0.190496f, -0.208008f, -0.959398f, 0.125000f, 0.375000f, - 0.071249f, 0.773584f, -0.167085f, 0.374628f, -0.208673f, -0.903388f, 0.250000f, 0.375000f, - 0.033217f, 0.740625f, -0.159265f, 0.152111f, -0.624831f, -0.765799f, 0.125000f, 0.500000f, - 0.095986f, 0.800391f, -0.141684f, 0.332794f, 0.801110f, -0.497465f, 0.375000f, 0.250000f, - 0.071249f, 0.773584f, -0.167085f, 0.374627f, -0.208673f, -0.903388f, 0.250000f, 0.375000f, - 0.102036f, 0.773584f, -0.150618f, 0.543782f, -0.208889f, -0.812814f, 0.375000f, 0.375000f, - 0.128714f, 0.773584f, -0.128714f, 0.691459f, -0.209208f, -0.691459f, 0.500000f, 0.375000f, - 0.091571f, 0.740625f, -0.135177f, 0.433501f, -0.626344f, -0.647897f, 0.375000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, 0.452928f, 0.872306f, -0.184222f, 0.750000f, 0.000000f, - 0.121080f, 0.800391f, -0.121080f, 0.422824f, 0.801523f, -0.422824f, 0.500000f, 0.250000f, - 0.157173f, 0.800391f, -0.067026f, 0.554553f, 0.799746f, -0.229949f, 0.750000f, 0.250000f, - 0.170313f, 0.800391f, -0.000000f, 0.600000f, 0.800000f, -0.000000f, 1.000000f, 0.250000f, - 0.149959f, 0.740625f, -0.063939f, 0.721440f, -0.624481f, -0.299246f, 0.750000f, 0.500000f, - 0.000000f, 0.825000f, -0.000000f, 0.120585f, 0.989432f, -0.080516f, 0.625000f, 0.000000f, - 0.081785f, 0.818408f, -0.081785f, 0.107233f, 0.988434f, -0.107233f, 0.500000f, 0.125000f, - 0.095702f, 0.818408f, -0.064836f, 0.126232f, 0.988400f, -0.084445f, 0.625000f, 0.125000f, - 0.106164f, 0.818408f, -0.045274f, 0.140386f, 0.988384f, -0.058209f, 0.750000f, 0.125000f, - 0.141684f, 0.800391f, -0.095986f, 0.497480f, 0.801096f, -0.332805f, 0.625000f, 0.250000f, - 0.000000f, 0.825000f, -0.000000f, 0.142954f, 0.989332f, -0.028025f, 0.875000f, 0.000000f, - 0.106164f, 0.818408f, -0.045274f, 0.140386f, 0.988384f, -0.058210f, 0.750000f, 0.125000f, - 0.112750f, 0.818408f, -0.023522f, 0.149513f, 0.988314f, -0.029681f, 0.875000f, 0.125000f, - 0.115039f, 0.818408f, -0.000000f, 0.152452f, 0.988311f, -0.000000f, 1.000000f, 0.125000f, - 0.166924f, 0.800391f, -0.034822f, 0.588468f, 0.800035f, -0.116828f, 0.875000f, 0.250000f, - 0.141684f, 0.800391f, -0.095986f, 0.497480f, 0.801096f, -0.332805f, 0.625000f, 0.250000f, - 0.128714f, 0.773584f, -0.128714f, 0.691459f, -0.209208f, -0.691459f, 0.500000f, 0.375000f, - 0.150618f, 0.773584f, -0.102036f, 0.812815f, -0.208883f, -0.543783f, 0.625000f, 0.375000f, - 0.167085f, 0.773584f, -0.071249f, 0.903388f, -0.208673f, -0.374627f, 0.750000f, 0.375000f, - 0.135177f, 0.740625f, -0.091571f, 0.647907f, -0.626329f, -0.433508f, 0.625000f, 0.500000f, - 0.166924f, 0.800391f, -0.034822f, 0.588468f, 0.800035f, -0.116828f, 0.875000f, 0.250000f, - 0.167085f, 0.773584f, -0.071249f, 0.903388f, -0.208673f, -0.374628f, 0.750000f, 0.375000f, - 0.177452f, 0.773584f, -0.037016f, 0.959402f, -0.207986f, -0.190497f, 0.875000f, 0.375000f, - 0.181055f, 0.773584f, -0.000000f, 0.978147f, -0.207916f, 0.000000f, 1.000000f, 0.375000f, - 0.159265f, 0.740625f, -0.033217f, 0.765837f, -0.624784f, -0.152118f, 0.875000f, 0.500000f, - 0.063939f, 0.740625f, -0.149959f, 0.299162f, -0.624756f, -0.721237f, 0.250000f, 0.500000f, - 0.000000f, 0.666797f, -0.098437f, 0.000000f, -0.572589f, -0.819843f, 0.000000f, 0.750000f, - 0.038696f, 0.666797f, -0.090828f, 0.314474f, -0.572775f, -0.756991f, 0.250000f, 0.750000f, - 0.069943f, 0.666797f, -0.069943f, 0.578480f, -0.575083f, -0.578481f, 0.500000f, 0.750000f, - 0.039250f, 0.600000f, -0.092250f, 0.230883f, 0.799779f, -0.554119f, 0.250000f, 1.000000f, - 0.033217f, 0.740625f, -0.159265f, 0.152111f, -0.624831f, -0.765799f, 0.125000f, 0.500000f, - 0.000000f, 0.704150f, -0.129883f, 0.000000f, -0.679236f, -0.733920f, 0.000000f, 0.625000f, - 0.026539f, 0.704150f, -0.127296f, 0.143067f, -0.679374f, -0.719711f, 0.125000f, 0.625000f, - 0.051090f, 0.704150f, -0.119854f, 0.280858f, -0.680523f, -0.676763f, 0.250000f, 0.625000f, - 0.020097f, 0.666797f, -0.096475f, 0.160103f, -0.572768f, -0.803930f, 0.125000f, 0.750000f, - 0.091571f, 0.740625f, -0.135177f, 0.433501f, -0.626344f, -0.647897f, 0.375000f, 0.500000f, - 0.051090f, 0.704150f, -0.119854f, 0.280858f, -0.680523f, -0.676763f, 0.250000f, 0.625000f, - 0.073175f, 0.704150f, -0.108035f, 0.407364f, -0.680856f, -0.608679f, 0.375000f, 0.625000f, - 0.092316f, 0.704150f, -0.092316f, 0.517530f, -0.681414f, -0.517530f, 0.500000f, 0.625000f, - 0.055433f, 0.666797f, -0.081863f, 0.455446f, -0.574467f, -0.680115f, 0.375000f, 0.750000f, - 0.020097f, 0.666797f, -0.096475f, 0.160103f, -0.572768f, -0.803930f, 0.125000f, 0.750000f, - 0.000000f, 0.631201f, -0.083398f, 0.000000f, -0.051878f, -0.998653f, 0.000000f, 0.875000f, - 0.017004f, 0.631201f, -0.081732f, 0.195539f, -0.052085f, -0.979312f, 0.125000f, 0.875000f, - 0.032751f, 0.631201f, -0.076941f, 0.383727f, -0.052662f, -0.921944f, 0.250000f, 0.875000f, - 0.020375f, 0.600000f, -0.098000f, 0.117666f, 0.800016f, -0.588328f, 0.125000f, 1.000000f, - 0.055433f, 0.666797f, -0.081863f, 0.455446f, -0.574467f, -0.680115f, 0.375000f, 0.750000f, - 0.032751f, 0.631201f, -0.076941f, 0.383728f, -0.052662f, -0.921944f, 0.250000f, 0.875000f, - 0.046930f, 0.631201f, -0.069336f, 0.555963f, -0.053050f, -0.829512f, 0.375000f, 0.875000f, - 0.059228f, 0.631201f, -0.059228f, 0.706102f, -0.053279f, -0.706103f, 0.500000f, 0.875000f, - 0.056250f, 0.600000f, -0.083125f, 0.333571f, 0.800807f, -0.497431f, 0.375000f, 1.000000f, - 0.149959f, 0.740625f, -0.063939f, 0.721440f, -0.624480f, -0.299246f, 0.750000f, 0.500000f, - 0.069943f, 0.666797f, -0.069943f, 0.578481f, -0.575083f, -0.578480f, 0.500000f, 0.750000f, - 0.090828f, 0.666797f, -0.038696f, 0.757155f, -0.572521f, -0.314542f, 0.750000f, 0.750000f, - 0.098437f, 0.666797f, -0.000000f, 0.819843f, -0.572589f, 0.000000f, 1.000000f, 0.750000f, - 0.092250f, 0.600000f, -0.039250f, 0.554392f, 0.799557f, -0.230996f, 0.750000f, 1.000000f, - 0.135177f, 0.740625f, -0.091571f, 0.647907f, -0.626329f, -0.433508f, 0.625000f, 0.500000f, - 0.092316f, 0.704150f, -0.092316f, 0.517530f, -0.681414f, -0.517530f, 0.500000f, 0.625000f, - 0.108035f, 0.704150f, -0.073175f, 0.608689f, -0.680843f, -0.407370f, 0.625000f, 0.625000f, - 0.119854f, 0.704150f, -0.051090f, 0.676763f, -0.680523f, -0.280858f, 0.750000f, 0.625000f, - 0.081863f, 0.666797f, -0.055433f, 0.680120f, -0.574459f, -0.455449f, 0.625000f, 0.750000f, - 0.159265f, 0.740625f, -0.033217f, 0.765837f, -0.624783f, -0.152118f, 0.875000f, 0.500000f, - 0.119854f, 0.704150f, -0.051090f, 0.676763f, -0.680523f, -0.280858f, 0.750000f, 0.625000f, - 0.127296f, 0.704150f, -0.026539f, 0.719750f, -0.679330f, -0.143075f, 0.875000f, 0.625000f, - 0.129883f, 0.704150f, -0.000000f, 0.733920f, -0.679236f, 0.000000f, 1.000000f, 0.625000f, - 0.096475f, 0.666797f, -0.020097f, 0.803957f, -0.572729f, -0.160109f, 0.875000f, 0.750000f, - 0.081863f, 0.666797f, -0.055433f, 0.680120f, -0.574459f, -0.455449f, 0.625000f, 0.750000f, - 0.059228f, 0.631201f, -0.059228f, 0.706103f, -0.053279f, -0.706102f, 0.500000f, 0.875000f, - 0.069336f, 0.631201f, -0.046930f, 0.829512f, -0.053067f, -0.555963f, 0.625000f, 0.875000f, - 0.076941f, 0.631201f, -0.032751f, 0.921944f, -0.052662f, -0.383728f, 0.750000f, 0.875000f, - 0.083125f, 0.600000f, -0.056250f, 0.497447f, 0.800793f, -0.333582f, 0.625000f, 1.000000f, - 0.096475f, 0.666797f, -0.020097f, 0.803957f, -0.572729f, -0.160109f, 0.875000f, 0.750000f, - 0.076941f, 0.631201f, -0.032751f, 0.921944f, -0.052662f, -0.383727f, 0.750000f, 0.875000f, - 0.081732f, 0.631201f, -0.017004f, 0.979311f, -0.052105f, -0.195539f, 0.875000f, 0.875000f, - 0.083398f, 0.631201f, -0.000000f, 0.998653f, -0.051878f, 0.000000f, 1.000000f, 0.875000f, - 0.098000f, 0.600000f, -0.020375f, 0.588381f, 0.799975f, -0.117676f, 0.875000f, 1.000000f, - 0.100000f, 0.600000f, -0.000000f, 0.600000f, 0.800000f, -0.000000f, 0.000000f, 0.000000f, - 0.000000f, 0.600000f, 0.100000f, 0.000000f, 0.800000f, 0.600000f, 1.000000f, 0.000000f, - 0.650000f, 0.450000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, 0.450000f, 0.650000f, 0.000000f, 0.000000f, 1.000000f, 1.000000f, 1.000000f, - 0.071000f, 0.600000f, 0.071000f, 0.427006f, 0.797077f, 0.427006f, 0.500000f, 0.000000f, - 0.412500f, 0.525000f, -0.000000f, 0.148340f, 0.988936f, -0.000000f, 0.000000f, 0.500000f, - 0.292875f, 0.525000f, 0.292875f, 0.105934f, 0.988714f, 0.105934f, 0.500000f, 0.500000f, - 0.000000f, 0.525000f, 0.412500f, 0.000000f, 0.988936f, 0.148340f, 1.000000f, 0.500000f, - 0.461500f, 0.450000f, 0.461500f, 0.707107f, 0.000000f, 0.707107f, 0.500000f, 1.000000f, - 0.092250f, 0.600000f, 0.039250f, 0.554119f, 0.799778f, 0.230883f, 0.250000f, 0.000000f, - 0.228125f, 0.555469f, -0.000000f, 0.203954f, 0.978980f, -0.000000f, 0.000000f, 0.250000f, - 0.210445f, 0.555469f, 0.089539f, 0.188404f, 0.978949f, 0.078502f, 0.250000f, 0.250000f, - 0.161969f, 0.555469f, 0.161969f, 0.143654f, 0.979146f, 0.143654f, 0.500000f, 0.250000f, - 0.380531f, 0.525000f, 0.161906f, 0.137033f, 0.988920f, 0.057097f, 0.250000f, 0.500000f, - 0.098000f, 0.600000f, 0.020375f, 0.588329f, 0.800015f, 0.117666f, 0.125000f, 0.000000f, - 0.152344f, 0.575098f, -0.000000f, 0.317497f, 0.948259f, -0.000000f, 0.000000f, 0.125000f, - 0.149297f, 0.575098f, 0.031040f, 0.311317f, 0.948264f, 0.062263f, 0.125000f, 0.125000f, - 0.140537f, 0.575098f, 0.059795f, 0.292417f, 0.948497f, 0.121840f, 0.250000f, 0.125000f, - 0.223562f, 0.555469f, 0.046480f, 0.199984f, 0.978983f, 0.039997f, 0.125000f, 0.250000f, - 0.083125f, 0.600000f, 0.056250f, 0.497432f, 0.800807f, 0.333572f, 0.375000f, 0.000000f, - 0.140537f, 0.575098f, 0.059795f, 0.292417f, 0.948497f, 0.121840f, 0.250000f, 0.125000f, - 0.126636f, 0.575098f, 0.085693f, 0.263031f, 0.948527f, 0.176386f, 0.375000f, 0.125000f, - 0.108164f, 0.575098f, 0.108164f, 0.223681f, 0.948648f, 0.223681f, 0.500000f, 0.125000f, - 0.189629f, 0.555469f, 0.128320f, 0.168938f, 0.979094f, 0.113288f, 0.375000f, 0.250000f, - 0.223562f, 0.555469f, 0.046480f, 0.199985f, 0.978982f, 0.039997f, 0.125000f, 0.250000f, - 0.317969f, 0.539355f, -0.000000f, 0.157389f, 0.987537f, -0.000000f, 0.000000f, 0.375000f, - 0.311609f, 0.539355f, 0.064786f, 0.154325f, 0.987538f, 0.030865f, 0.125000f, 0.375000f, - 0.293326f, 0.539355f, 0.124803f, 0.144929f, 0.987598f, 0.060387f, 0.250000f, 0.375000f, - 0.404250f, 0.525000f, 0.084047f, 0.145452f, 0.988938f, 0.029090f, 0.125000f, 0.500000f, - 0.189629f, 0.555469f, 0.128320f, 0.168939f, 0.979094f, 0.113289f, 0.375000f, 0.250000f, - 0.293326f, 0.539355f, 0.124803f, 0.144929f, 0.987598f, 0.060387f, 0.250000f, 0.375000f, - 0.264312f, 0.539355f, 0.178857f, 0.130361f, 0.987605f, 0.087419f, 0.375000f, 0.375000f, - 0.225758f, 0.539355f, 0.225758f, 0.110849f, 0.987636f, 0.110849f, 0.500000f, 0.375000f, - 0.342891f, 0.525000f, 0.232031f, 0.122865f, 0.988997f, 0.082392f, 0.375000f, 0.500000f, - 0.039250f, 0.600000f, 0.092250f, 0.230997f, 0.799556f, 0.554392f, 0.750000f, 0.000000f, - 0.161969f, 0.555469f, 0.161969f, 0.143654f, 0.979146f, 0.143654f, 0.500000f, 0.250000f, - 0.089539f, 0.555469f, 0.210445f, 0.078560f, 0.978918f, 0.188544f, 0.750000f, 0.250000f, - 0.000000f, 0.555469f, 0.228125f, 0.000000f, 0.978980f, 0.203954f, 1.000000f, 0.250000f, - 0.161906f, 0.525000f, 0.380531f, 0.057140f, 0.988903f, 0.137136f, 0.750000f, 0.500000f, - 0.056250f, 0.600000f, 0.083125f, 0.333583f, 0.800793f, 0.497447f, 0.625000f, 0.000000f, - 0.108164f, 0.575098f, 0.108164f, 0.223681f, 0.948648f, 0.223681f, 0.500000f, 0.125000f, - 0.085693f, 0.575098f, 0.126636f, 0.176393f, 0.948522f, 0.263043f, 0.625000f, 0.125000f, - 0.059795f, 0.575098f, 0.140537f, 0.121840f, 0.948497f, 0.292417f, 0.750000f, 0.125000f, - 0.128320f, 0.555469f, 0.189629f, 0.113293f, 0.979092f, 0.168946f, 0.625000f, 0.250000f, - 0.020375f, 0.600000f, 0.098000f, 0.117676f, 0.799975f, 0.588382f, 0.875000f, 0.000000f, - 0.059795f, 0.575098f, 0.140537f, 0.121840f, 0.948497f, 0.292417f, 0.750000f, 0.125000f, - 0.031040f, 0.575098f, 0.149297f, 0.062271f, 0.948251f, 0.311356f, 0.875000f, 0.125000f, - 0.000000f, 0.575098f, 0.152344f, 0.000000f, 0.948259f, 0.317497f, 1.000000f, 0.125000f, - 0.046480f, 0.555469f, 0.223562f, 0.040002f, 0.978977f, 0.200010f, 0.875000f, 0.250000f, - 0.128320f, 0.555469f, 0.189629f, 0.113294f, 0.979092f, 0.168947f, 0.625000f, 0.250000f, - 0.225758f, 0.539355f, 0.225758f, 0.110849f, 0.987636f, 0.110849f, 0.500000f, 0.375000f, - 0.178857f, 0.539355f, 0.264312f, 0.087423f, 0.987604f, 0.130368f, 0.625000f, 0.375000f, - 0.124803f, 0.539355f, 0.293326f, 0.060387f, 0.987598f, 0.144929f, 0.750000f, 0.375000f, - 0.232031f, 0.525000f, 0.342891f, 0.082396f, 0.988996f, 0.122871f, 0.625000f, 0.500000f, - 0.046480f, 0.555469f, 0.223562f, 0.040002f, 0.978977f, 0.200011f, 0.875000f, 0.250000f, - 0.124803f, 0.539355f, 0.293326f, 0.060387f, 0.987598f, 0.144929f, 0.750000f, 0.375000f, - 0.064786f, 0.539355f, 0.311609f, 0.030869f, 0.987535f, 0.154346f, 0.875000f, 0.375000f, - 0.000000f, 0.539355f, 0.317969f, 0.000000f, 0.987537f, 0.157389f, 1.000000f, 0.375000f, - 0.084047f, 0.525000f, 0.404250f, 0.029094f, 0.988935f, 0.145472f, 0.875000f, 0.500000f, - 0.380531f, 0.525000f, 0.161906f, 0.137032f, 0.988920f, 0.057097f, 0.250000f, 0.500000f, - 0.578125f, 0.494531f, -0.000000f, 0.258736f, 0.965948f, -0.000000f, 0.000000f, 0.750000f, - 0.533320f, 0.494531f, 0.226914f, 0.239005f, 0.965898f, 0.099585f, 0.250000f, 0.750000f, - 0.410469f, 0.494531f, 0.410469f, 0.182258f, 0.966211f, 0.182258f, 0.500000f, 0.750000f, - 0.599625f, 0.450000f, 0.255125f, 0.923077f, 0.000000f, 0.384615f, 0.250000f, 1.000000f, - 0.404250f, 0.525000f, 0.084047f, 0.145452f, 0.988938f, 0.029090f, 0.125000f, 0.500000f, - 0.502344f, 0.510645f, -0.000000f, 0.174370f, 0.984680f, -0.000000f, 0.000000f, 0.625000f, - 0.492297f, 0.510645f, 0.102353f, 0.170975f, 0.984682f, 0.034195f, 0.125000f, 0.625000f, - 0.463412f, 0.510645f, 0.197170f, 0.160568f, 0.984755f, 0.066903f, 0.250000f, 0.625000f, - 0.566563f, 0.494531f, 0.117793f, 0.253699f, 0.965951f, 0.050740f, 0.125000f, 0.750000f, - 0.342891f, 0.525000f, 0.232031f, 0.122865f, 0.988997f, 0.082392f, 0.375000f, 0.500000f, - 0.463412f, 0.510645f, 0.197170f, 0.160568f, 0.984755f, 0.066903f, 0.250000f, 0.625000f, - 0.417573f, 0.510645f, 0.282568f, 0.144429f, 0.984764f, 0.096852f, 0.375000f, 0.625000f, - 0.356664f, 0.510645f, 0.356664f, 0.122811f, 0.984802f, 0.122811f, 0.500000f, 0.625000f, - 0.480566f, 0.494531f, 0.325195f, 0.214330f, 0.966129f, 0.143727f, 0.375000f, 0.750000f, - 0.566563f, 0.494531f, 0.117793f, 0.253699f, 0.965951f, 0.050740f, 0.125000f, 0.750000f, - 0.630469f, 0.474902f, -0.000000f, 0.505546f, 0.862799f, -0.000000f, 0.000000f, 0.875000f, - 0.617859f, 0.474902f, 0.128458f, 0.495710f, 0.862811f, 0.099142f, 0.125000f, 0.875000f, - 0.581607f, 0.474902f, 0.247459f, 0.465791f, 0.863349f, 0.194079f, 0.250000f, 0.875000f, - 0.637000f, 0.450000f, 0.132437f, 0.980581f, 0.000000f, 0.196116f, 0.125000f, 1.000000f, - 0.480566f, 0.494531f, 0.325195f, 0.214330f, 0.966129f, 0.143727f, 0.375000f, 0.750000f, - 0.581607f, 0.474902f, 0.247459f, 0.465791f, 0.863349f, 0.194080f, 0.250000f, 0.875000f, - 0.524077f, 0.474902f, 0.354639f, 0.419002f, 0.863417f, 0.280978f, 0.375000f, 0.875000f, - 0.447633f, 0.474902f, 0.447633f, 0.356389f, 0.863698f, 0.356389f, 0.500000f, 0.875000f, - 0.540312f, 0.450000f, 0.365625f, 0.830544f, 0.000000f, 0.556953f, 0.375000f, 1.000000f, - 0.161906f, 0.525000f, 0.380531f, 0.057140f, 0.988903f, 0.137136f, 0.750000f, 0.500000f, - 0.410469f, 0.494531f, 0.410469f, 0.182258f, 0.966211f, 0.182258f, 0.500000f, 0.750000f, - 0.226914f, 0.494531f, 0.533320f, 0.099657f, 0.965848f, 0.239176f, 0.750000f, 0.750000f, - 0.000000f, 0.494531f, 0.578125f, 0.000000f, 0.965948f, 0.258736f, 1.000000f, 0.750000f, - 0.255125f, 0.450000f, 0.599625f, 0.384615f, 0.000000f, 0.923077f, 0.750000f, 1.000000f, - 0.232031f, 0.525000f, 0.342891f, 0.082396f, 0.988996f, 0.122871f, 0.625000f, 0.500000f, - 0.356664f, 0.510645f, 0.356664f, 0.122811f, 0.984802f, 0.122811f, 0.500000f, 0.625000f, - 0.282568f, 0.510645f, 0.417573f, 0.096857f, 0.984762f, 0.144436f, 0.625000f, 0.625000f, - 0.197170f, 0.510645f, 0.463412f, 0.066903f, 0.984755f, 0.160568f, 0.750000f, 0.625000f, - 0.325195f, 0.494531f, 0.480566f, 0.143734f, 0.966126f, 0.214340f, 0.625000f, 0.750000f, - 0.084047f, 0.525000f, 0.404250f, 0.029094f, 0.988935f, 0.145472f, 0.875000f, 0.500000f, - 0.197170f, 0.510645f, 0.463412f, 0.066903f, 0.984755f, 0.160568f, 0.750000f, 0.625000f, - 0.102353f, 0.510645f, 0.492297f, 0.034200f, 0.984678f, 0.170999f, 0.875000f, 0.625000f, - 0.000000f, 0.510645f, 0.502344f, 0.000000f, 0.984680f, 0.174370f, 1.000000f, 0.625000f, - 0.117793f, 0.494531f, 0.566563f, 0.050746f, 0.965942f, 0.253732f, 0.875000f, 0.750000f, - 0.325195f, 0.494531f, 0.480566f, 0.143734f, 0.966126f, 0.214340f, 0.625000f, 0.750000f, - 0.447633f, 0.474902f, 0.447633f, 0.356389f, 0.863698f, 0.356389f, 0.500000f, 0.875000f, - 0.354639f, 0.474902f, 0.524077f, 0.280988f, 0.863406f, 0.419017f, 0.625000f, 0.875000f, - 0.247459f, 0.474902f, 0.581607f, 0.194080f, 0.863349f, 0.465791f, 0.750000f, 0.875000f, - 0.365625f, 0.450000f, 0.540312f, 0.556953f, 0.000000f, 0.830544f, 0.625000f, 1.000000f, - 0.117793f, 0.494531f, 0.566563f, 0.050747f, 0.965942f, 0.253732f, 0.875000f, 0.750000f, - 0.247459f, 0.474902f, 0.581607f, 0.194079f, 0.863349f, 0.465791f, 0.750000f, 0.875000f, - 0.128458f, 0.474902f, 0.617859f, 0.099152f, 0.862780f, 0.495761f, 0.875000f, 0.875000f, - 0.000000f, 0.474902f, 0.630469f, 0.000000f, 0.862799f, 0.505546f, 1.000000f, 0.875000f, - 0.132437f, 0.450000f, 0.637000f, 0.196116f, 0.000000f, 0.980581f, 0.875000f, 1.000000f, - 0.000000f, 0.600000f, 0.100000f, 0.000000f, 0.800000f, 0.600000f, 0.000000f, 0.000000f, - -0.100000f, 0.600000f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 1.000000f, 0.000000f, - 0.000000f, 0.450000f, 0.650000f, 0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, - -0.650000f, 0.450000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 1.000000f, 1.000000f, - -0.071000f, 0.600000f, 0.071000f, -0.427006f, 0.797077f, 0.427006f, 0.500000f, 0.000000f, - 0.000000f, 0.525000f, 0.412500f, 0.000000f, 0.988936f, 0.148340f, 0.000000f, 0.500000f, - -0.292875f, 0.525000f, 0.292875f, -0.105934f, 0.988714f, 0.105934f, 0.500000f, 0.500000f, - -0.412500f, 0.525000f, -0.000000f, -0.148340f, 0.988936f, 0.000000f, 1.000000f, 0.500000f, - -0.461500f, 0.450000f, 0.461500f, -0.707107f, 0.000000f, 0.707107f, 0.500000f, 1.000000f, - -0.039250f, 0.600000f, 0.092250f, -0.230883f, 0.799778f, 0.554119f, 0.250000f, 0.000000f, - 0.000000f, 0.555469f, 0.228125f, 0.000000f, 0.978980f, 0.203954f, 0.000000f, 0.250000f, - -0.089539f, 0.555469f, 0.210445f, -0.078502f, 0.978949f, 0.188404f, 0.250000f, 0.250000f, - -0.161969f, 0.555469f, 0.161969f, -0.143654f, 0.979146f, 0.143654f, 0.500000f, 0.250000f, - -0.161906f, 0.525000f, 0.380531f, -0.057097f, 0.988920f, 0.137033f, 0.250000f, 0.500000f, - -0.020375f, 0.600000f, 0.098000f, -0.117666f, 0.800015f, 0.588329f, 0.125000f, 0.000000f, - 0.000000f, 0.575098f, 0.152344f, 0.000000f, 0.948259f, 0.317497f, 0.000000f, 0.125000f, - -0.031040f, 0.575098f, 0.149297f, -0.062263f, 0.948264f, 0.311317f, 0.125000f, 0.125000f, - -0.059795f, 0.575098f, 0.140537f, -0.121840f, 0.948497f, 0.292417f, 0.250000f, 0.125000f, - -0.046480f, 0.555469f, 0.223562f, -0.039997f, 0.978983f, 0.199984f, 0.125000f, 0.250000f, - -0.056250f, 0.600000f, 0.083125f, -0.333572f, 0.800807f, 0.497432f, 0.375000f, 0.000000f, - -0.059795f, 0.575098f, 0.140537f, -0.121840f, 0.948497f, 0.292417f, 0.250000f, 0.125000f, - -0.085693f, 0.575098f, 0.126636f, -0.176386f, 0.948527f, 0.263031f, 0.375000f, 0.125000f, - -0.108164f, 0.575098f, 0.108164f, -0.223681f, 0.948648f, 0.223681f, 0.500000f, 0.125000f, - -0.128320f, 0.555469f, 0.189629f, -0.113288f, 0.979094f, 0.168938f, 0.375000f, 0.250000f, - -0.046480f, 0.555469f, 0.223562f, -0.039997f, 0.978982f, 0.199985f, 0.125000f, 0.250000f, - 0.000000f, 0.539355f, 0.317969f, 0.000000f, 0.987537f, 0.157389f, 0.000000f, 0.375000f, - -0.064786f, 0.539355f, 0.311609f, -0.030865f, 0.987538f, 0.154325f, 0.125000f, 0.375000f, - -0.124803f, 0.539355f, 0.293326f, -0.060387f, 0.987598f, 0.144929f, 0.250000f, 0.375000f, - -0.084047f, 0.525000f, 0.404250f, -0.029090f, 0.988938f, 0.145452f, 0.125000f, 0.500000f, - -0.128320f, 0.555469f, 0.189629f, -0.113289f, 0.979094f, 0.168939f, 0.375000f, 0.250000f, - -0.124803f, 0.539355f, 0.293326f, -0.060387f, 0.987598f, 0.144929f, 0.250000f, 0.375000f, - -0.178857f, 0.539355f, 0.264312f, -0.087419f, 0.987605f, 0.130361f, 0.375000f, 0.375000f, - -0.225758f, 0.539355f, 0.225758f, -0.110849f, 0.987636f, 0.110849f, 0.500000f, 0.375000f, - -0.232031f, 0.525000f, 0.342891f, -0.082392f, 0.988997f, 0.122865f, 0.375000f, 0.500000f, - -0.092250f, 0.600000f, 0.039250f, -0.554392f, 0.799556f, 0.230997f, 0.750000f, 0.000000f, - -0.161969f, 0.555469f, 0.161969f, -0.143654f, 0.979146f, 0.143654f, 0.500000f, 0.250000f, - -0.210445f, 0.555469f, 0.089539f, -0.188544f, 0.978918f, 0.078560f, 0.750000f, 0.250000f, - -0.228125f, 0.555469f, -0.000000f, -0.203954f, 0.978980f, 0.000000f, 1.000000f, 0.250000f, - -0.380531f, 0.525000f, 0.161906f, -0.137136f, 0.988903f, 0.057140f, 0.750000f, 0.500000f, - -0.083125f, 0.600000f, 0.056250f, -0.497447f, 0.800793f, 0.333583f, 0.625000f, 0.000000f, - -0.108164f, 0.575098f, 0.108164f, -0.223681f, 0.948648f, 0.223681f, 0.500000f, 0.125000f, - -0.126636f, 0.575098f, 0.085693f, -0.263043f, 0.948522f, 0.176393f, 0.625000f, 0.125000f, - -0.140537f, 0.575098f, 0.059795f, -0.292417f, 0.948497f, 0.121840f, 0.750000f, 0.125000f, - -0.189629f, 0.555469f, 0.128320f, -0.168946f, 0.979092f, 0.113293f, 0.625000f, 0.250000f, - -0.098000f, 0.600000f, 0.020375f, -0.588382f, 0.799975f, 0.117676f, 0.875000f, 0.000000f, - -0.140537f, 0.575098f, 0.059795f, -0.292417f, 0.948497f, 0.121840f, 0.750000f, 0.125000f, - -0.149297f, 0.575098f, 0.031040f, -0.311356f, 0.948251f, 0.062271f, 0.875000f, 0.125000f, - -0.152344f, 0.575098f, -0.000000f, -0.317497f, 0.948259f, 0.000000f, 1.000000f, 0.125000f, - -0.223562f, 0.555469f, 0.046480f, -0.200010f, 0.978977f, 0.040002f, 0.875000f, 0.250000f, - -0.189629f, 0.555469f, 0.128320f, -0.168947f, 0.979092f, 0.113294f, 0.625000f, 0.250000f, - -0.225758f, 0.539355f, 0.225758f, -0.110849f, 0.987636f, 0.110849f, 0.500000f, 0.375000f, - -0.264312f, 0.539355f, 0.178857f, -0.130368f, 0.987604f, 0.087423f, 0.625000f, 0.375000f, - -0.293326f, 0.539355f, 0.124803f, -0.144929f, 0.987598f, 0.060387f, 0.750000f, 0.375000f, - -0.342891f, 0.525000f, 0.232031f, -0.122871f, 0.988996f, 0.082396f, 0.625000f, 0.500000f, - -0.223562f, 0.555469f, 0.046480f, -0.200011f, 0.978977f, 0.040002f, 0.875000f, 0.250000f, - -0.293326f, 0.539355f, 0.124803f, -0.144929f, 0.987598f, 0.060387f, 0.750000f, 0.375000f, - -0.311609f, 0.539355f, 0.064786f, -0.154346f, 0.987535f, 0.030869f, 0.875000f, 0.375000f, - -0.317969f, 0.539355f, -0.000000f, -0.157389f, 0.987537f, 0.000000f, 1.000000f, 0.375000f, - -0.404250f, 0.525000f, 0.084047f, -0.145472f, 0.988935f, 0.029094f, 0.875000f, 0.500000f, - -0.161906f, 0.525000f, 0.380531f, -0.057097f, 0.988920f, 0.137032f, 0.250000f, 0.500000f, - 0.000000f, 0.494531f, 0.578125f, 0.000000f, 0.965948f, 0.258736f, 0.000000f, 0.750000f, - -0.226914f, 0.494531f, 0.533320f, -0.099585f, 0.965898f, 0.239005f, 0.250000f, 0.750000f, - -0.410469f, 0.494531f, 0.410469f, -0.182258f, 0.966211f, 0.182258f, 0.500000f, 0.750000f, - -0.255125f, 0.450000f, 0.599625f, -0.384615f, 0.000000f, 0.923077f, 0.250000f, 1.000000f, - -0.084047f, 0.525000f, 0.404250f, -0.029090f, 0.988938f, 0.145452f, 0.125000f, 0.500000f, - 0.000000f, 0.510645f, 0.502344f, 0.000000f, 0.984680f, 0.174370f, 0.000000f, 0.625000f, - -0.102353f, 0.510645f, 0.492297f, -0.034195f, 0.984682f, 0.170975f, 0.125000f, 0.625000f, - -0.197170f, 0.510645f, 0.463412f, -0.066903f, 0.984755f, 0.160568f, 0.250000f, 0.625000f, - -0.117793f, 0.494531f, 0.566563f, -0.050740f, 0.965951f, 0.253699f, 0.125000f, 0.750000f, - -0.232031f, 0.525000f, 0.342891f, -0.082392f, 0.988997f, 0.122865f, 0.375000f, 0.500000f, - -0.197170f, 0.510645f, 0.463412f, -0.066903f, 0.984755f, 0.160568f, 0.250000f, 0.625000f, - -0.282568f, 0.510645f, 0.417573f, -0.096852f, 0.984764f, 0.144429f, 0.375000f, 0.625000f, - -0.356664f, 0.510645f, 0.356664f, -0.122811f, 0.984802f, 0.122811f, 0.500000f, 0.625000f, - -0.325195f, 0.494531f, 0.480566f, -0.143727f, 0.966129f, 0.214330f, 0.375000f, 0.750000f, - -0.117793f, 0.494531f, 0.566563f, -0.050740f, 0.965951f, 0.253699f, 0.125000f, 0.750000f, - 0.000000f, 0.474902f, 0.630469f, 0.000000f, 0.862799f, 0.505546f, 0.000000f, 0.875000f, - -0.128458f, 0.474902f, 0.617859f, -0.099142f, 0.862811f, 0.495710f, 0.125000f, 0.875000f, - -0.247459f, 0.474902f, 0.581607f, -0.194079f, 0.863349f, 0.465791f, 0.250000f, 0.875000f, - -0.132437f, 0.450000f, 0.637000f, -0.196116f, 0.000000f, 0.980581f, 0.125000f, 1.000000f, - -0.325195f, 0.494531f, 0.480566f, -0.143727f, 0.966129f, 0.214330f, 0.375000f, 0.750000f, - -0.247459f, 0.474902f, 0.581607f, -0.194080f, 0.863349f, 0.465791f, 0.250000f, 0.875000f, - -0.354639f, 0.474902f, 0.524077f, -0.280978f, 0.863417f, 0.419002f, 0.375000f, 0.875000f, - -0.447633f, 0.474902f, 0.447633f, -0.356389f, 0.863698f, 0.356389f, 0.500000f, 0.875000f, - -0.365625f, 0.450000f, 0.540312f, -0.556953f, 0.000000f, 0.830544f, 0.375000f, 1.000000f, - -0.380531f, 0.525000f, 0.161906f, -0.137136f, 0.988903f, 0.057140f, 0.750000f, 0.500000f, - -0.410469f, 0.494531f, 0.410469f, -0.182258f, 0.966211f, 0.182258f, 0.500000f, 0.750000f, - -0.533320f, 0.494531f, 0.226914f, -0.239176f, 0.965848f, 0.099657f, 0.750000f, 0.750000f, - -0.578125f, 0.494531f, -0.000000f, -0.258736f, 0.965948f, 0.000000f, 1.000000f, 0.750000f, - -0.599625f, 0.450000f, 0.255125f, -0.923077f, 0.000000f, 0.384615f, 0.750000f, 1.000000f, - -0.342891f, 0.525000f, 0.232031f, -0.122871f, 0.988996f, 0.082396f, 0.625000f, 0.500000f, - -0.356664f, 0.510645f, 0.356664f, -0.122811f, 0.984802f, 0.122811f, 0.500000f, 0.625000f, - -0.417573f, 0.510645f, 0.282568f, -0.144436f, 0.984762f, 0.096857f, 0.625000f, 0.625000f, - -0.463412f, 0.510645f, 0.197170f, -0.160568f, 0.984755f, 0.066903f, 0.750000f, 0.625000f, - -0.480566f, 0.494531f, 0.325195f, -0.214340f, 0.966126f, 0.143734f, 0.625000f, 0.750000f, - -0.404250f, 0.525000f, 0.084047f, -0.145472f, 0.988935f, 0.029094f, 0.875000f, 0.500000f, - -0.463412f, 0.510645f, 0.197170f, -0.160568f, 0.984755f, 0.066903f, 0.750000f, 0.625000f, - -0.492297f, 0.510645f, 0.102353f, -0.170999f, 0.984678f, 0.034200f, 0.875000f, 0.625000f, - -0.502344f, 0.510645f, -0.000000f, -0.174370f, 0.984680f, 0.000000f, 1.000000f, 0.625000f, - -0.566563f, 0.494531f, 0.117793f, -0.253732f, 0.965942f, 0.050746f, 0.875000f, 0.750000f, - -0.480566f, 0.494531f, 0.325195f, -0.214340f, 0.966126f, 0.143734f, 0.625000f, 0.750000f, - -0.447633f, 0.474902f, 0.447633f, -0.356389f, 0.863698f, 0.356389f, 0.500000f, 0.875000f, - -0.524077f, 0.474902f, 0.354639f, -0.419017f, 0.863406f, 0.280988f, 0.625000f, 0.875000f, - -0.581607f, 0.474902f, 0.247459f, -0.465791f, 0.863349f, 0.194080f, 0.750000f, 0.875000f, - -0.540312f, 0.450000f, 0.365625f, -0.830544f, 0.000000f, 0.556953f, 0.625000f, 1.000000f, - -0.566563f, 0.494531f, 0.117793f, -0.253732f, 0.965942f, 0.050747f, 0.875000f, 0.750000f, - -0.581607f, 0.474902f, 0.247459f, -0.465791f, 0.863349f, 0.194079f, 0.750000f, 0.875000f, - -0.617859f, 0.474902f, 0.128458f, -0.495761f, 0.862780f, 0.099152f, 0.875000f, 0.875000f, - -0.630469f, 0.474902f, -0.000000f, -0.505546f, 0.862799f, 0.000000f, 1.000000f, 0.875000f, - -0.637000f, 0.450000f, 0.132437f, -0.980581f, 0.000000f, 0.196116f, 0.875000f, 1.000000f, - -0.100000f, 0.600000f, -0.000000f, -0.600000f, 0.800000f, 0.000000f, 0.000000f, 0.000000f, - 0.000000f, 0.600000f, -0.100000f, 0.000000f, 0.800000f, -0.600000f, 1.000000f, 0.000000f, - -0.650000f, 0.450000f, -0.000000f, -1.000000f, -0.000000f, -0.000000f, 0.000000f, 1.000000f, - 0.000000f, 0.450000f, -0.650000f, 0.000000f, 0.000000f, -1.000000f, 1.000000f, 1.000000f, - -0.071000f, 0.600000f, -0.071000f, -0.427006f, 0.797077f, -0.427006f, 0.500000f, 0.000000f, - -0.412500f, 0.525000f, -0.000000f, -0.148340f, 0.988936f, 0.000000f, 0.000000f, 0.500000f, - -0.292875f, 0.525000f, -0.292875f, -0.105934f, 0.988714f, -0.105934f, 0.500000f, 0.500000f, - 0.000000f, 0.525000f, -0.412500f, 0.000000f, 0.988936f, -0.148340f, 1.000000f, 0.500000f, - -0.461500f, 0.450000f, -0.461500f, -0.707107f, -0.000000f, -0.707107f, 0.500000f, 1.000000f, - -0.092250f, 0.600000f, -0.039250f, -0.554119f, 0.799778f, -0.230883f, 0.250000f, 0.000000f, - -0.228125f, 0.555469f, -0.000000f, -0.203954f, 0.978980f, 0.000000f, 0.000000f, 0.250000f, - -0.210445f, 0.555469f, -0.089539f, -0.188404f, 0.978949f, -0.078502f, 0.250000f, 0.250000f, - -0.161969f, 0.555469f, -0.161969f, -0.143654f, 0.979146f, -0.143654f, 0.500000f, 0.250000f, - -0.380531f, 0.525000f, -0.161906f, -0.137033f, 0.988920f, -0.057097f, 0.250000f, 0.500000f, - -0.098000f, 0.600000f, -0.020375f, -0.588329f, 0.800015f, -0.117666f, 0.125000f, 0.000000f, - -0.152344f, 0.575098f, -0.000000f, -0.317497f, 0.948259f, 0.000000f, 0.000000f, 0.125000f, - -0.149297f, 0.575098f, -0.031040f, -0.311317f, 0.948264f, -0.062263f, 0.125000f, 0.125000f, - -0.140537f, 0.575098f, -0.059795f, -0.292417f, 0.948497f, -0.121840f, 0.250000f, 0.125000f, - -0.223562f, 0.555469f, -0.046480f, -0.199984f, 0.978983f, -0.039997f, 0.125000f, 0.250000f, - -0.083125f, 0.600000f, -0.056250f, -0.497432f, 0.800807f, -0.333572f, 0.375000f, 0.000000f, - -0.140537f, 0.575098f, -0.059795f, -0.292417f, 0.948497f, -0.121840f, 0.250000f, 0.125000f, - -0.126636f, 0.575098f, -0.085693f, -0.263031f, 0.948527f, -0.176386f, 0.375000f, 0.125000f, - -0.108164f, 0.575098f, -0.108164f, -0.223681f, 0.948648f, -0.223681f, 0.500000f, 0.125000f, - -0.189629f, 0.555469f, -0.128320f, -0.168938f, 0.979094f, -0.113288f, 0.375000f, 0.250000f, - -0.223562f, 0.555469f, -0.046480f, -0.199985f, 0.978982f, -0.039997f, 0.125000f, 0.250000f, - -0.317969f, 0.539355f, -0.000000f, -0.157389f, 0.987537f, 0.000000f, 0.000000f, 0.375000f, - -0.311609f, 0.539355f, -0.064786f, -0.154325f, 0.987538f, -0.030865f, 0.125000f, 0.375000f, - -0.293326f, 0.539355f, -0.124803f, -0.144929f, 0.987598f, -0.060387f, 0.250000f, 0.375000f, - -0.404250f, 0.525000f, -0.084047f, -0.145452f, 0.988938f, -0.029090f, 0.125000f, 0.500000f, - -0.189629f, 0.555469f, -0.128320f, -0.168939f, 0.979094f, -0.113289f, 0.375000f, 0.250000f, - -0.293326f, 0.539355f, -0.124803f, -0.144929f, 0.987598f, -0.060387f, 0.250000f, 0.375000f, - -0.264312f, 0.539355f, -0.178857f, -0.130361f, 0.987605f, -0.087419f, 0.375000f, 0.375000f, - -0.225758f, 0.539355f, -0.225758f, -0.110849f, 0.987636f, -0.110849f, 0.500000f, 0.375000f, - -0.342891f, 0.525000f, -0.232031f, -0.122865f, 0.988997f, -0.082392f, 0.375000f, 0.500000f, - -0.039250f, 0.600000f, -0.092250f, -0.230997f, 0.799556f, -0.554392f, 0.750000f, 0.000000f, - -0.161969f, 0.555469f, -0.161969f, -0.143654f, 0.979146f, -0.143654f, 0.500000f, 0.250000f, - -0.089539f, 0.555469f, -0.210445f, -0.078560f, 0.978918f, -0.188544f, 0.750000f, 0.250000f, - 0.000000f, 0.555469f, -0.228125f, 0.000000f, 0.978980f, -0.203954f, 1.000000f, 0.250000f, - -0.161906f, 0.525000f, -0.380531f, -0.057140f, 0.988903f, -0.137136f, 0.750000f, 0.500000f, - -0.056250f, 0.600000f, -0.083125f, -0.333583f, 0.800793f, -0.497447f, 0.625000f, 0.000000f, - -0.108164f, 0.575098f, -0.108164f, -0.223681f, 0.948648f, -0.223681f, 0.500000f, 0.125000f, - -0.085693f, 0.575098f, -0.126636f, -0.176393f, 0.948522f, -0.263043f, 0.625000f, 0.125000f, - -0.059795f, 0.575098f, -0.140537f, -0.121840f, 0.948497f, -0.292417f, 0.750000f, 0.125000f, - -0.128320f, 0.555469f, -0.189629f, -0.113293f, 0.979092f, -0.168946f, 0.625000f, 0.250000f, - -0.020375f, 0.600000f, -0.098000f, -0.117676f, 0.799975f, -0.588382f, 0.875000f, 0.000000f, - -0.059795f, 0.575098f, -0.140537f, -0.121840f, 0.948497f, -0.292417f, 0.750000f, 0.125000f, - -0.031040f, 0.575098f, -0.149297f, -0.062271f, 0.948251f, -0.311356f, 0.875000f, 0.125000f, - 0.000000f, 0.575098f, -0.152344f, 0.000000f, 0.948259f, -0.317497f, 1.000000f, 0.125000f, - -0.046480f, 0.555469f, -0.223562f, -0.040002f, 0.978977f, -0.200010f, 0.875000f, 0.250000f, - -0.128320f, 0.555469f, -0.189629f, -0.113294f, 0.979092f, -0.168947f, 0.625000f, 0.250000f, - -0.225758f, 0.539355f, -0.225758f, -0.110849f, 0.987636f, -0.110849f, 0.500000f, 0.375000f, - -0.178857f, 0.539355f, -0.264312f, -0.087423f, 0.987604f, -0.130368f, 0.625000f, 0.375000f, - -0.124803f, 0.539355f, -0.293326f, -0.060387f, 0.987598f, -0.144929f, 0.750000f, 0.375000f, - -0.232031f, 0.525000f, -0.342891f, -0.082396f, 0.988996f, -0.122871f, 0.625000f, 0.500000f, - -0.046480f, 0.555469f, -0.223562f, -0.040002f, 0.978977f, -0.200011f, 0.875000f, 0.250000f, - -0.124803f, 0.539355f, -0.293326f, -0.060387f, 0.987598f, -0.144929f, 0.750000f, 0.375000f, - -0.064786f, 0.539355f, -0.311609f, -0.030869f, 0.987535f, -0.154346f, 0.875000f, 0.375000f, - 0.000000f, 0.539355f, -0.317969f, 0.000000f, 0.987537f, -0.157389f, 1.000000f, 0.375000f, - -0.084047f, 0.525000f, -0.404250f, -0.029094f, 0.988935f, -0.145472f, 0.875000f, 0.500000f, - -0.380531f, 0.525000f, -0.161906f, -0.137032f, 0.988920f, -0.057097f, 0.250000f, 0.500000f, - -0.578125f, 0.494531f, -0.000000f, -0.258736f, 0.965948f, 0.000000f, 0.000000f, 0.750000f, - -0.533320f, 0.494531f, -0.226914f, -0.239005f, 0.965898f, -0.099585f, 0.250000f, 0.750000f, - -0.410469f, 0.494531f, -0.410469f, -0.182258f, 0.966211f, -0.182258f, 0.500000f, 0.750000f, - -0.599625f, 0.450000f, -0.255125f, -0.923077f, -0.000000f, -0.384615f, 0.250000f, 1.000000f, - -0.404250f, 0.525000f, -0.084047f, -0.145452f, 0.988938f, -0.029090f, 0.125000f, 0.500000f, - -0.502344f, 0.510645f, -0.000000f, -0.174370f, 0.984680f, 0.000000f, 0.000000f, 0.625000f, - -0.492297f, 0.510645f, -0.102353f, -0.170975f, 0.984682f, -0.034195f, 0.125000f, 0.625000f, - -0.463412f, 0.510645f, -0.197170f, -0.160568f, 0.984755f, -0.066903f, 0.250000f, 0.625000f, - -0.566563f, 0.494531f, -0.117793f, -0.253699f, 0.965951f, -0.050740f, 0.125000f, 0.750000f, - -0.342891f, 0.525000f, -0.232031f, -0.122865f, 0.988997f, -0.082392f, 0.375000f, 0.500000f, - -0.463412f, 0.510645f, -0.197170f, -0.160568f, 0.984755f, -0.066903f, 0.250000f, 0.625000f, - -0.417573f, 0.510645f, -0.282568f, -0.144429f, 0.984764f, -0.096852f, 0.375000f, 0.625000f, - -0.356664f, 0.510645f, -0.356664f, -0.122811f, 0.984802f, -0.122811f, 0.500000f, 0.625000f, - -0.480566f, 0.494531f, -0.325195f, -0.214330f, 0.966129f, -0.143727f, 0.375000f, 0.750000f, - -0.566563f, 0.494531f, -0.117793f, -0.253699f, 0.965951f, -0.050740f, 0.125000f, 0.750000f, - -0.630469f, 0.474902f, -0.000000f, -0.505546f, 0.862799f, 0.000000f, 0.000000f, 0.875000f, - -0.617859f, 0.474902f, -0.128458f, -0.495710f, 0.862811f, -0.099142f, 0.125000f, 0.875000f, - -0.581607f, 0.474902f, -0.247459f, -0.465791f, 0.863349f, -0.194079f, 0.250000f, 0.875000f, - -0.637000f, 0.450000f, -0.132437f, -0.980581f, -0.000000f, -0.196116f, 0.125000f, 1.000000f, - -0.480566f, 0.494531f, -0.325195f, -0.214330f, 0.966129f, -0.143727f, 0.375000f, 0.750000f, - -0.581607f, 0.474902f, -0.247459f, -0.465791f, 0.863349f, -0.194080f, 0.250000f, 0.875000f, - -0.524077f, 0.474902f, -0.354639f, -0.419002f, 0.863417f, -0.280978f, 0.375000f, 0.875000f, - -0.447633f, 0.474902f, -0.447633f, -0.356389f, 0.863698f, -0.356389f, 0.500000f, 0.875000f, - -0.540312f, 0.450000f, -0.365625f, -0.830544f, -0.000000f, -0.556953f, 0.375000f, 1.000000f, - -0.161906f, 0.525000f, -0.380531f, -0.057140f, 0.988903f, -0.137136f, 0.750000f, 0.500000f, - -0.410469f, 0.494531f, -0.410469f, -0.182258f, 0.966211f, -0.182258f, 0.500000f, 0.750000f, - -0.226914f, 0.494531f, -0.533320f, -0.099657f, 0.965848f, -0.239176f, 0.750000f, 0.750000f, - 0.000000f, 0.494531f, -0.578125f, 0.000000f, 0.965948f, -0.258736f, 1.000000f, 0.750000f, - -0.255125f, 0.450000f, -0.599625f, -0.384615f, -0.000000f, -0.923077f, 0.750000f, 1.000000f, - -0.232031f, 0.525000f, -0.342891f, -0.082396f, 0.988996f, -0.122871f, 0.625000f, 0.500000f, - -0.356664f, 0.510645f, -0.356664f, -0.122811f, 0.984802f, -0.122811f, 0.500000f, 0.625000f, - -0.282568f, 0.510645f, -0.417573f, -0.096857f, 0.984762f, -0.144436f, 0.625000f, 0.625000f, - -0.197170f, 0.510645f, -0.463412f, -0.066903f, 0.984755f, -0.160568f, 0.750000f, 0.625000f, - -0.325195f, 0.494531f, -0.480566f, -0.143734f, 0.966126f, -0.214340f, 0.625000f, 0.750000f, - -0.084047f, 0.525000f, -0.404250f, -0.029094f, 0.988935f, -0.145472f, 0.875000f, 0.500000f, - -0.197170f, 0.510645f, -0.463412f, -0.066903f, 0.984755f, -0.160568f, 0.750000f, 0.625000f, - -0.102353f, 0.510645f, -0.492297f, -0.034200f, 0.984678f, -0.170999f, 0.875000f, 0.625000f, - 0.000000f, 0.510645f, -0.502344f, 0.000000f, 0.984680f, -0.174370f, 1.000000f, 0.625000f, - -0.117793f, 0.494531f, -0.566563f, -0.050746f, 0.965942f, -0.253732f, 0.875000f, 0.750000f, - -0.325195f, 0.494531f, -0.480566f, -0.143734f, 0.966126f, -0.214340f, 0.625000f, 0.750000f, - -0.447633f, 0.474902f, -0.447633f, -0.356389f, 0.863698f, -0.356389f, 0.500000f, 0.875000f, - -0.354639f, 0.474902f, -0.524077f, -0.280988f, 0.863406f, -0.419017f, 0.625000f, 0.875000f, - -0.247459f, 0.474902f, -0.581607f, -0.194080f, 0.863349f, -0.465791f, 0.750000f, 0.875000f, - -0.365625f, 0.450000f, -0.540312f, -0.556953f, -0.000000f, -0.830544f, 0.625000f, 1.000000f, - -0.117793f, 0.494531f, -0.566563f, -0.050747f, 0.965942f, -0.253732f, 0.875000f, 0.750000f, - -0.247459f, 0.474902f, -0.581607f, -0.194079f, 0.863349f, -0.465791f, 0.750000f, 0.875000f, - -0.128458f, 0.474902f, -0.617859f, -0.099152f, 0.862780f, -0.495761f, 0.875000f, 0.875000f, - 0.000000f, 0.474902f, -0.630469f, 0.000000f, 0.862799f, -0.505546f, 1.000000f, 0.875000f, - -0.132437f, 0.450000f, -0.637000f, -0.196116f, -0.000000f, -0.980581f, 0.875000f, 1.000000f, - 0.000000f, 0.600000f, -0.100000f, 0.000000f, 0.800000f, -0.600000f, 0.000000f, 0.000000f, - 0.100000f, 0.600000f, -0.000000f, 0.600000f, 0.800000f, -0.000000f, 1.000000f, 0.000000f, - 0.000000f, 0.450000f, -0.650000f, 0.000000f, 0.000000f, -1.000000f, 0.000000f, 1.000000f, - 0.650000f, 0.450000f, -0.000000f, 1.000000f, 0.000000f, -0.000000f, 1.000000f, 1.000000f, - 0.071000f, 0.600000f, -0.071000f, 0.427006f, 0.797077f, -0.427006f, 0.500000f, 0.000000f, - 0.000000f, 0.525000f, -0.412500f, 0.000000f, 0.988936f, -0.148340f, 0.000000f, 0.500000f, - 0.292875f, 0.525000f, -0.292875f, 0.105934f, 0.988714f, -0.105934f, 0.500000f, 0.500000f, - 0.412500f, 0.525000f, -0.000000f, 0.148340f, 0.988936f, -0.000000f, 1.000000f, 0.500000f, - 0.461500f, 0.450000f, -0.461500f, 0.707107f, 0.000000f, -0.707107f, 0.500000f, 1.000000f, - 0.039250f, 0.600000f, -0.092250f, 0.230883f, 0.799778f, -0.554119f, 0.250000f, 0.000000f, - 0.000000f, 0.555469f, -0.228125f, 0.000000f, 0.978980f, -0.203954f, 0.000000f, 0.250000f, - 0.089539f, 0.555469f, -0.210445f, 0.078502f, 0.978949f, -0.188404f, 0.250000f, 0.250000f, - 0.161969f, 0.555469f, -0.161969f, 0.143654f, 0.979146f, -0.143654f, 0.500000f, 0.250000f, - 0.161906f, 0.525000f, -0.380531f, 0.057097f, 0.988920f, -0.137033f, 0.250000f, 0.500000f, - 0.020375f, 0.600000f, -0.098000f, 0.117666f, 0.800015f, -0.588329f, 0.125000f, 0.000000f, - 0.000000f, 0.575098f, -0.152344f, 0.000000f, 0.948259f, -0.317497f, 0.000000f, 0.125000f, - 0.031040f, 0.575098f, -0.149297f, 0.062263f, 0.948264f, -0.311317f, 0.125000f, 0.125000f, - 0.059795f, 0.575098f, -0.140537f, 0.121840f, 0.948497f, -0.292417f, 0.250000f, 0.125000f, - 0.046480f, 0.555469f, -0.223562f, 0.039997f, 0.978983f, -0.199984f, 0.125000f, 0.250000f, - 0.056250f, 0.600000f, -0.083125f, 0.333572f, 0.800807f, -0.497432f, 0.375000f, 0.000000f, - 0.059795f, 0.575098f, -0.140537f, 0.121840f, 0.948497f, -0.292417f, 0.250000f, 0.125000f, - 0.085693f, 0.575098f, -0.126636f, 0.176386f, 0.948527f, -0.263031f, 0.375000f, 0.125000f, - 0.108164f, 0.575098f, -0.108164f, 0.223681f, 0.948648f, -0.223681f, 0.500000f, 0.125000f, - 0.128320f, 0.555469f, -0.189629f, 0.113288f, 0.979094f, -0.168938f, 0.375000f, 0.250000f, - 0.046480f, 0.555469f, -0.223562f, 0.039997f, 0.978982f, -0.199985f, 0.125000f, 0.250000f, - 0.000000f, 0.539355f, -0.317969f, 0.000000f, 0.987537f, -0.157389f, 0.000000f, 0.375000f, - 0.064786f, 0.539355f, -0.311609f, 0.030865f, 0.987538f, -0.154325f, 0.125000f, 0.375000f, - 0.124803f, 0.539355f, -0.293326f, 0.060387f, 0.987598f, -0.144929f, 0.250000f, 0.375000f, - 0.084047f, 0.525000f, -0.404250f, 0.029090f, 0.988938f, -0.145452f, 0.125000f, 0.500000f, - 0.128320f, 0.555469f, -0.189629f, 0.113289f, 0.979094f, -0.168939f, 0.375000f, 0.250000f, - 0.124803f, 0.539355f, -0.293326f, 0.060387f, 0.987598f, -0.144929f, 0.250000f, 0.375000f, - 0.178857f, 0.539355f, -0.264312f, 0.087419f, 0.987605f, -0.130361f, 0.375000f, 0.375000f, - 0.225758f, 0.539355f, -0.225758f, 0.110849f, 0.987636f, -0.110849f, 0.500000f, 0.375000f, - 0.232031f, 0.525000f, -0.342891f, 0.082392f, 0.988997f, -0.122865f, 0.375000f, 0.500000f, - 0.092250f, 0.600000f, -0.039250f, 0.554392f, 0.799556f, -0.230997f, 0.750000f, 0.000000f, - 0.161969f, 0.555469f, -0.161969f, 0.143654f, 0.979146f, -0.143654f, 0.500000f, 0.250000f, - 0.210445f, 0.555469f, -0.089539f, 0.188544f, 0.978918f, -0.078560f, 0.750000f, 0.250000f, - 0.228125f, 0.555469f, -0.000000f, 0.203954f, 0.978980f, -0.000000f, 1.000000f, 0.250000f, - 0.380531f, 0.525000f, -0.161906f, 0.137136f, 0.988903f, -0.057140f, 0.750000f, 0.500000f, - 0.083125f, 0.600000f, -0.056250f, 0.497447f, 0.800793f, -0.333583f, 0.625000f, 0.000000f, - 0.108164f, 0.575098f, -0.108164f, 0.223681f, 0.948648f, -0.223681f, 0.500000f, 0.125000f, - 0.126636f, 0.575098f, -0.085693f, 0.263043f, 0.948522f, -0.176393f, 0.625000f, 0.125000f, - 0.140537f, 0.575098f, -0.059795f, 0.292417f, 0.948497f, -0.121840f, 0.750000f, 0.125000f, - 0.189629f, 0.555469f, -0.128320f, 0.168946f, 0.979092f, -0.113293f, 0.625000f, 0.250000f, - 0.098000f, 0.600000f, -0.020375f, 0.588382f, 0.799975f, -0.117676f, 0.875000f, 0.000000f, - 0.140537f, 0.575098f, -0.059795f, 0.292417f, 0.948497f, -0.121840f, 0.750000f, 0.125000f, - 0.149297f, 0.575098f, -0.031040f, 0.311356f, 0.948251f, -0.062271f, 0.875000f, 0.125000f, - 0.152344f, 0.575098f, -0.000000f, 0.317497f, 0.948259f, -0.000000f, 1.000000f, 0.125000f, - 0.223562f, 0.555469f, -0.046480f, 0.200010f, 0.978977f, -0.040002f, 0.875000f, 0.250000f, - 0.189629f, 0.555469f, -0.128320f, 0.168947f, 0.979092f, -0.113294f, 0.625000f, 0.250000f, - 0.225758f, 0.539355f, -0.225758f, 0.110849f, 0.987636f, -0.110849f, 0.500000f, 0.375000f, - 0.264312f, 0.539355f, -0.178857f, 0.130368f, 0.987604f, -0.087423f, 0.625000f, 0.375000f, - 0.293326f, 0.539355f, -0.124803f, 0.144929f, 0.987598f, -0.060387f, 0.750000f, 0.375000f, - 0.342891f, 0.525000f, -0.232031f, 0.122871f, 0.988996f, -0.082396f, 0.625000f, 0.500000f, - 0.223562f, 0.555469f, -0.046480f, 0.200011f, 0.978977f, -0.040002f, 0.875000f, 0.250000f, - 0.293326f, 0.539355f, -0.124803f, 0.144929f, 0.987598f, -0.060387f, 0.750000f, 0.375000f, - 0.311609f, 0.539355f, -0.064786f, 0.154346f, 0.987535f, -0.030869f, 0.875000f, 0.375000f, - 0.317969f, 0.539355f, -0.000000f, 0.157389f, 0.987537f, -0.000000f, 1.000000f, 0.375000f, - 0.404250f, 0.525000f, -0.084047f, 0.145472f, 0.988935f, -0.029094f, 0.875000f, 0.500000f, - 0.161906f, 0.525000f, -0.380531f, 0.057097f, 0.988920f, -0.137032f, 0.250000f, 0.500000f, - 0.000000f, 0.494531f, -0.578125f, 0.000000f, 0.965948f, -0.258736f, 0.000000f, 0.750000f, - 0.226914f, 0.494531f, -0.533320f, 0.099585f, 0.965898f, -0.239005f, 0.250000f, 0.750000f, - 0.410469f, 0.494531f, -0.410469f, 0.182258f, 0.966211f, -0.182258f, 0.500000f, 0.750000f, - 0.255125f, 0.450000f, -0.599625f, 0.384615f, 0.000000f, -0.923077f, 0.250000f, 1.000000f, - 0.084047f, 0.525000f, -0.404250f, 0.029090f, 0.988938f, -0.145452f, 0.125000f, 0.500000f, - 0.000000f, 0.510645f, -0.502344f, 0.000000f, 0.984680f, -0.174370f, 0.000000f, 0.625000f, - 0.102353f, 0.510645f, -0.492297f, 0.034195f, 0.984682f, -0.170975f, 0.125000f, 0.625000f, - 0.197170f, 0.510645f, -0.463412f, 0.066903f, 0.984755f, -0.160568f, 0.250000f, 0.625000f, - 0.117793f, 0.494531f, -0.566563f, 0.050740f, 0.965951f, -0.253699f, 0.125000f, 0.750000f, - 0.232031f, 0.525000f, -0.342891f, 0.082392f, 0.988997f, -0.122865f, 0.375000f, 0.500000f, - 0.197170f, 0.510645f, -0.463412f, 0.066903f, 0.984755f, -0.160568f, 0.250000f, 0.625000f, - 0.282568f, 0.510645f, -0.417573f, 0.096852f, 0.984764f, -0.144429f, 0.375000f, 0.625000f, - 0.356664f, 0.510645f, -0.356664f, 0.122811f, 0.984802f, -0.122811f, 0.500000f, 0.625000f, - 0.325195f, 0.494531f, -0.480566f, 0.143727f, 0.966129f, -0.214330f, 0.375000f, 0.750000f, - 0.117793f, 0.494531f, -0.566563f, 0.050740f, 0.965951f, -0.253699f, 0.125000f, 0.750000f, - 0.000000f, 0.474902f, -0.630469f, 0.000000f, 0.862799f, -0.505546f, 0.000000f, 0.875000f, - 0.128458f, 0.474902f, -0.617859f, 0.099142f, 0.862811f, -0.495710f, 0.125000f, 0.875000f, - 0.247459f, 0.474902f, -0.581607f, 0.194079f, 0.863349f, -0.465791f, 0.250000f, 0.875000f, - 0.132437f, 0.450000f, -0.637000f, 0.196116f, 0.000000f, -0.980581f, 0.125000f, 1.000000f, - 0.325195f, 0.494531f, -0.480566f, 0.143727f, 0.966129f, -0.214330f, 0.375000f, 0.750000f, - 0.247459f, 0.474902f, -0.581607f, 0.194080f, 0.863349f, -0.465791f, 0.250000f, 0.875000f, - 0.354639f, 0.474902f, -0.524077f, 0.280978f, 0.863417f, -0.419002f, 0.375000f, 0.875000f, - 0.447633f, 0.474902f, -0.447633f, 0.356389f, 0.863698f, -0.356389f, 0.500000f, 0.875000f, - 0.365625f, 0.450000f, -0.540312f, 0.556953f, 0.000000f, -0.830544f, 0.375000f, 1.000000f, - 0.380531f, 0.525000f, -0.161906f, 0.137136f, 0.988903f, -0.057140f, 0.750000f, 0.500000f, - 0.410469f, 0.494531f, -0.410469f, 0.182258f, 0.966211f, -0.182258f, 0.500000f, 0.750000f, - 0.533320f, 0.494531f, -0.226914f, 0.239176f, 0.965848f, -0.099657f, 0.750000f, 0.750000f, - 0.578125f, 0.494531f, -0.000000f, 0.258736f, 0.965948f, -0.000000f, 1.000000f, 0.750000f, - 0.599625f, 0.450000f, -0.255125f, 0.923077f, 0.000000f, -0.384615f, 0.750000f, 1.000000f, - 0.342891f, 0.525000f, -0.232031f, 0.122871f, 0.988996f, -0.082396f, 0.625000f, 0.500000f, - 0.356664f, 0.510645f, -0.356664f, 0.122811f, 0.984802f, -0.122811f, 0.500000f, 0.625000f, - 0.417573f, 0.510645f, -0.282568f, 0.144436f, 0.984762f, -0.096857f, 0.625000f, 0.625000f, - 0.463412f, 0.510645f, -0.197170f, 0.160568f, 0.984755f, -0.066903f, 0.750000f, 0.625000f, - 0.480566f, 0.494531f, -0.325195f, 0.214340f, 0.966126f, -0.143734f, 0.625000f, 0.750000f, - 0.404250f, 0.525000f, -0.084047f, 0.145472f, 0.988935f, -0.029094f, 0.875000f, 0.500000f, - 0.463412f, 0.510645f, -0.197170f, 0.160568f, 0.984755f, -0.066903f, 0.750000f, 0.625000f, - 0.492297f, 0.510645f, -0.102353f, 0.170999f, 0.984678f, -0.034200f, 0.875000f, 0.625000f, - 0.502344f, 0.510645f, -0.000000f, 0.174370f, 0.984680f, -0.000000f, 1.000000f, 0.625000f, - 0.566563f, 0.494531f, -0.117793f, 0.253732f, 0.965942f, -0.050746f, 0.875000f, 0.750000f, - 0.480566f, 0.494531f, -0.325195f, 0.214340f, 0.966126f, -0.143734f, 0.625000f, 0.750000f, - 0.447633f, 0.474902f, -0.447633f, 0.356389f, 0.863698f, -0.356389f, 0.500000f, 0.875000f, - 0.524077f, 0.474902f, -0.354639f, 0.419017f, 0.863406f, -0.280988f, 0.625000f, 0.875000f, - 0.581607f, 0.474902f, -0.247459f, 0.465791f, 0.863349f, -0.194080f, 0.750000f, 0.875000f, - 0.540312f, 0.450000f, -0.365625f, 0.830544f, 0.000000f, -0.556953f, 0.625000f, 1.000000f, - 0.566563f, 0.494531f, -0.117793f, 0.253732f, 0.965942f, -0.050747f, 0.875000f, 0.750000f, - 0.581607f, 0.474902f, -0.247459f, 0.465791f, 0.863349f, -0.194079f, 0.750000f, 0.875000f, - 0.617859f, 0.474902f, -0.128458f, 0.495761f, 0.862780f, -0.099152f, 0.875000f, 0.875000f, - 0.630469f, 0.474902f, -0.000000f, 0.505546f, 0.862799f, -0.000000f, 1.000000f, 0.875000f, - 0.637000f, 0.450000f, -0.132437f, 0.980581f, 0.000000f, -0.196116f, 0.875000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.099015f, -0.990148f, -0.099015f, 0.000000f, 0.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.099015f, -0.990148f, -0.099015f, 1.000000f, 0.000000f, - 0.750000f, -0.675000f, -0.000000f, 1.000000f, -0.000000f, 0.000000f, 0.000000f, 1.000000f, - 0.000000f, -0.675000f, -0.750000f, 0.000000f, 0.000000f, -1.000000f, 1.000000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.099015f, -0.990148f, -0.099015f, 0.500000f, 0.000000f, - 0.642187f, -0.726562f, -0.000000f, 0.141421f, -0.989949f, 0.000000f, 0.000000f, 0.500000f, - 0.455953f, -0.726562f, -0.455953f, 0.100995f, -0.989748f, -0.100995f, 0.500000f, 0.500000f, - 0.000000f, -0.726562f, -0.642187f, -0.000000f, -0.989949f, -0.141421f, 1.000000f, 0.500000f, - 0.532500f, -0.675000f, -0.532500f, 0.707107f, 0.000000f, -0.707107f, 0.500000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.036468f, -0.999224f, -0.014895f, 0.250000f, 0.000000f, - 0.417773f, -0.743555f, -0.000000f, 0.039517f, -0.999219f, 0.000000f, 0.000000f, 0.250000f, - 0.385396f, -0.743555f, -0.163976f, 0.036505f, -0.999218f, -0.015211f, 0.250000f, 0.250000f, - 0.296619f, -0.743555f, -0.296619f, 0.027829f, -0.999225f, -0.027829f, 0.500000f, 0.250000f, - 0.592418f, -0.726562f, -0.252059f, 0.130641f, -0.989934f, -0.054434f, 0.250000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, 0.015426f, -0.999876f, -0.003046f, 0.125000f, 0.000000f, - 0.236792f, -0.748315f, -0.000000f, 0.015871f, -0.999874f, 0.000000f, 0.000000f, 0.125000f, - 0.232056f, -0.748315f, -0.048246f, 0.015562f, -0.999874f, -0.003112f, 0.125000f, 0.125000f, - 0.218441f, -0.748315f, -0.092941f, 0.014614f, -0.999875f, -0.006089f, 0.250000f, 0.125000f, - 0.409418f, -0.743555f, -0.085121f, 0.038747f, -0.999219f, -0.007749f, 0.125000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, 0.013015f, -0.999877f, -0.008711f, 0.375000f, 0.000000f, - 0.218441f, -0.748315f, -0.092941f, 0.014614f, -0.999875f, -0.006089f, 0.250000f, 0.125000f, - 0.196833f, -0.748315f, -0.133195f, 0.013145f, -0.999875f, -0.008815f, 0.375000f, 0.125000f, - 0.168122f, -0.748315f, -0.168122f, 0.011177f, -0.999875f, -0.011177f, 0.500000f, 0.125000f, - 0.347274f, -0.743555f, -0.234998f, 0.032729f, -0.999223f, -0.021947f, 0.375000f, 0.250000f, - 0.409418f, -0.743555f, -0.085121f, 0.038748f, -0.999219f, -0.007750f, 0.125000f, 0.250000f, - 0.550415f, -0.736157f, -0.000000f, 0.076999f, -0.997031f, 0.000000f, 0.000000f, 0.375000f, - 0.539407f, -0.736157f, -0.112147f, 0.075499f, -0.997032f, -0.015100f, 0.125000f, 0.375000f, - 0.507758f, -0.736157f, -0.216038f, 0.070899f, -0.997046f, -0.029541f, 0.250000f, 0.375000f, - 0.629344f, -0.726562f, -0.130846f, 0.138668f, -0.989950f, -0.027734f, 0.125000f, 0.500000f, - 0.347274f, -0.743555f, -0.234998f, 0.032729f, -0.999223f, -0.021948f, 0.375000f, 0.250000f, - 0.507758f, -0.736157f, -0.216038f, 0.070899f, -0.997046f, -0.029541f, 0.250000f, 0.375000f, - 0.457533f, -0.736157f, -0.309608f, 0.063773f, -0.997048f, -0.042765f, 0.375000f, 0.375000f, - 0.390795f, -0.736157f, -0.390795f, 0.054226f, -0.997055f, -0.054226f, 0.500000f, 0.375000f, - 0.533818f, -0.726562f, -0.361230f, 0.117134f, -0.990005f, -0.078549f, 0.375000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, 0.014895f, -0.999224f, -0.036468f, 0.750000f, 0.000000f, - 0.296619f, -0.743555f, -0.296619f, 0.027829f, -0.999225f, -0.027829f, 0.500000f, 0.250000f, - 0.163976f, -0.743555f, -0.385396f, 0.015222f, -0.999216f, -0.036533f, 0.750000f, 0.250000f, - 0.000000f, -0.743555f, -0.417773f, -0.000000f, -0.999219f, -0.039517f, 1.000000f, 0.250000f, - 0.252059f, -0.726562f, -0.592418f, 0.054475f, -0.989919f, -0.130740f, 0.750000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, 0.008711f, -0.999877f, -0.013015f, 0.625000f, 0.000000f, - 0.168122f, -0.748315f, -0.168122f, 0.011177f, -0.999875f, -0.011177f, 0.500000f, 0.125000f, - 0.133195f, -0.748315f, -0.196833f, 0.008815f, -0.999875f, -0.013145f, 0.625000f, 0.125000f, - 0.092941f, -0.748315f, -0.218441f, 0.006089f, -0.999875f, -0.014614f, 0.750000f, 0.125000f, - 0.234998f, -0.743555f, -0.347274f, 0.021948f, -0.999223f, -0.032730f, 0.625000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, 0.003046f, -0.999876f, -0.015426f, 0.875000f, 0.000000f, - 0.092941f, -0.748315f, -0.218441f, 0.006089f, -0.999875f, -0.014614f, 0.750000f, 0.125000f, - 0.048246f, -0.748315f, -0.232056f, 0.003113f, -0.999874f, -0.015564f, 0.875000f, 0.125000f, - 0.000000f, -0.748315f, -0.236792f, -0.000000f, -0.999874f, -0.015871f, 1.000000f, 0.125000f, - 0.085121f, -0.743555f, -0.409418f, 0.007751f, -0.999219f, -0.038753f, 0.875000f, 0.250000f, - 0.234998f, -0.743555f, -0.347274f, 0.021949f, -0.999223f, -0.032731f, 0.625000f, 0.250000f, - 0.390795f, -0.736157f, -0.390795f, 0.054226f, -0.997055f, -0.054226f, 0.500000f, 0.375000f, - 0.309608f, -0.736157f, -0.457533f, 0.042767f, -0.997047f, -0.063776f, 0.625000f, 0.375000f, - 0.216038f, -0.736157f, -0.507758f, 0.029541f, -0.997046f, -0.070899f, 0.750000f, 0.375000f, - 0.361230f, -0.726562f, -0.533818f, 0.078553f, -0.990004f, -0.117140f, 0.625000f, 0.500000f, - 0.085121f, -0.743555f, -0.409418f, 0.007751f, -0.999219f, -0.038753f, 0.875000f, 0.250000f, - 0.216038f, -0.736157f, -0.507758f, 0.029541f, -0.997046f, -0.070899f, 0.750000f, 0.375000f, - 0.112147f, -0.736157f, -0.539407f, 0.015102f, -0.997031f, -0.075510f, 0.875000f, 0.375000f, - 0.000000f, -0.736157f, -0.550415f, -0.000000f, -0.997031f, -0.076999f, 1.000000f, 0.375000f, - 0.130846f, -0.726562f, -0.629344f, 0.027737f, -0.989948f, -0.138687f, 0.875000f, 0.500000f, - 0.592418f, -0.726562f, -0.252059f, 0.130641f, -0.989934f, -0.054434f, 0.250000f, 0.500000f, - 0.733008f, -0.702539f, -0.000000f, 0.514495f, -0.857493f, 0.000000f, 0.000000f, 0.750000f, - 0.676200f, -0.702539f, -0.287706f, 0.475188f, -0.857318f, -0.197995f, 0.250000f, 0.750000f, - 0.520436f, -0.702539f, -0.520436f, 0.362711f, -0.858418f, -0.362711f, 0.500000f, 0.750000f, - 0.691875f, -0.675000f, -0.294375f, 0.923077f, 0.000000f, -0.384615f, 0.250000f, 1.000000f, - 0.629344f, -0.726562f, -0.130846f, 0.138668f, -0.989950f, -0.027734f, 0.125000f, 0.500000f, - 0.700562f, -0.715210f, -0.000000f, 0.263929f, -0.964542f, 0.000000f, 0.000000f, 0.625000f, - 0.686550f, -0.715210f, -0.142739f, 0.258791f, -0.964546f, -0.051758f, 0.125000f, 0.625000f, - 0.646268f, -0.715210f, -0.274970f, 0.243061f, -0.964709f, -0.101276f, 0.250000f, 0.625000f, - 0.718348f, -0.702539f, -0.149350f, 0.504486f, -0.857505f, -0.100897f, 0.125000f, 0.750000f, - 0.533818f, -0.726562f, -0.361230f, 0.117134f, -0.990005f, -0.078549f, 0.375000f, 0.500000f, - 0.646268f, -0.715210f, -0.274970f, 0.243061f, -0.964709f, -0.101276f, 0.250000f, 0.625000f, - 0.582342f, -0.715210f, -0.394066f, 0.218633f, -0.964730f, -0.146613f, 0.375000f, 0.625000f, - 0.497399f, -0.715210f, -0.497399f, 0.185918f, -0.964815f, -0.185918f, 0.500000f, 0.625000f, - 0.609313f, -0.702539f, -0.412317f, 0.426431f, -0.858128f, -0.285959f, 0.375000f, 0.750000f, - 0.718348f, -0.702539f, -0.149350f, 0.504485f, -0.857505f, -0.100897f, 0.125000f, 0.750000f, - 0.746997f, -0.688989f, -0.000000f, 0.885831f, -0.464008f, 0.000000f, 0.000000f, 0.875000f, - 0.732057f, -0.688989f, -0.152201f, 0.868619f, -0.464027f, -0.173724f, 0.125000f, 0.875000f, - 0.689105f, -0.688989f, -0.293196f, 0.817250f, -0.464917f, -0.340521f, 0.250000f, 0.875000f, - 0.735000f, -0.675000f, -0.152812f, 0.980581f, 0.000000f, -0.196116f, 0.125000f, 1.000000f, - 0.609313f, -0.702539f, -0.412317f, 0.426430f, -0.858129f, -0.285959f, 0.375000f, 0.750000f, - 0.689105f, -0.688989f, -0.293196f, 0.817250f, -0.464917f, -0.340521f, 0.250000f, 0.875000f, - 0.620941f, -0.688989f, -0.420186f, 0.735277f, -0.465030f, -0.493068f, 0.375000f, 0.875000f, - 0.530368f, -0.688989f, -0.530368f, 0.625826f, -0.465494f, -0.625825f, 0.500000f, 0.875000f, - 0.623438f, -0.675000f, -0.421875f, 0.830544f, 0.000000f, -0.556953f, 0.375000f, 1.000000f, - 0.252059f, -0.726562f, -0.592418f, 0.054475f, -0.989919f, -0.130740f, 0.750000f, 0.500000f, - 0.520436f, -0.702539f, -0.520436f, 0.362711f, -0.858418f, -0.362711f, 0.500000f, 0.750000f, - 0.287706f, -0.702539f, -0.676200f, 0.198107f, -0.857143f, -0.475457f, 0.750000f, 0.750000f, - 0.000000f, -0.702539f, -0.733008f, -0.000000f, -0.857493f, -0.514495f, 1.000000f, 0.750000f, - 0.294375f, -0.675000f, -0.691875f, 0.384615f, 0.000000f, -0.923077f, 0.750000f, 1.000000f, - 0.361230f, -0.726562f, -0.533818f, 0.078553f, -0.990004f, -0.117140f, 0.625000f, 0.500000f, - 0.497399f, -0.715210f, -0.497399f, 0.185918f, -0.964815f, -0.185918f, 0.500000f, 0.625000f, - 0.394066f, -0.715210f, -0.582342f, 0.146620f, -0.964727f, -0.218643f, 0.625000f, 0.625000f, - 0.274970f, -0.715210f, -0.646268f, 0.101276f, -0.964709f, -0.243061f, 0.750000f, 0.625000f, - 0.412317f, -0.702539f, -0.609313f, 0.285969f, -0.858117f, -0.426446f, 0.625000f, 0.750000f, - 0.130846f, -0.726562f, -0.629344f, 0.027737f, -0.989948f, -0.138687f, 0.875000f, 0.500000f, - 0.274970f, -0.715210f, -0.646268f, 0.101276f, -0.964709f, -0.243061f, 0.750000f, 0.625000f, - 0.142739f, -0.715210f, -0.686550f, 0.051765f, -0.964536f, -0.258825f, 0.875000f, 0.625000f, - 0.000000f, -0.715210f, -0.700562f, -0.000000f, -0.964542f, -0.263929f, 1.000000f, 0.625000f, - 0.149350f, -0.702539f, -0.718348f, 0.100908f, -0.857473f, -0.504538f, 0.875000f, 0.750000f, - 0.412317f, -0.702539f, -0.609313f, 0.285969f, -0.858118f, -0.426445f, 0.625000f, 0.750000f, - 0.530368f, -0.688989f, -0.530368f, 0.625825f, -0.465494f, -0.625826f, 0.500000f, 0.875000f, - 0.420186f, -0.688989f, -0.620941f, 0.493073f, -0.465012f, -0.735284f, 0.625000f, 0.875000f, - 0.293196f, -0.688989f, -0.689105f, 0.340521f, -0.464917f, -0.817250f, 0.750000f, 0.875000f, - 0.421875f, -0.675000f, -0.623438f, 0.556953f, 0.000000f, -0.830544f, 0.625000f, 1.000000f, - 0.149350f, -0.702539f, -0.718348f, 0.100907f, -0.857473f, -0.504537f, 0.875000f, 0.750000f, - 0.293196f, -0.688989f, -0.689105f, 0.340521f, -0.464917f, -0.817250f, 0.750000f, 0.875000f, - 0.152201f, -0.688989f, -0.732057f, 0.173729f, -0.463975f, -0.868645f, 0.875000f, 0.875000f, - 0.000000f, -0.688989f, -0.746997f, -0.000000f, -0.464008f, -0.885831f, 1.000000f, 0.875000f, - 0.152812f, -0.675000f, -0.735000f, 0.196116f, 0.000000f, -0.980581f, 0.875000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.099015f, -0.990148f, -0.099015f, 0.000000f, 0.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.099015f, -0.990148f, -0.099015f, 1.000000f, 0.000000f, - 0.000000f, -0.675000f, -0.750000f, 0.000000f, 0.000000f, -1.000000f, 0.000000f, 1.000000f, - -0.750000f, -0.675000f, -0.000000f, -1.000000f, 0.000000f, 0.000000f, 1.000000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.099015f, -0.990148f, -0.099015f, 0.500000f, 0.000000f, - 0.000000f, -0.726562f, -0.642187f, -0.000000f, -0.989949f, -0.141421f, 0.000000f, 0.500000f, - -0.455953f, -0.726562f, -0.455953f, -0.100995f, -0.989748f, -0.100995f, 0.500000f, 0.500000f, - -0.642187f, -0.726562f, -0.000000f, -0.141421f, -0.989949f, 0.000000f, 1.000000f, 0.500000f, - -0.532500f, -0.675000f, -0.532500f, -0.707107f, 0.000000f, -0.707107f, 0.500000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.014895f, -0.999224f, -0.036468f, 0.250000f, 0.000000f, - 0.000000f, -0.743555f, -0.417773f, -0.000000f, -0.999219f, -0.039517f, 0.000000f, 0.250000f, - -0.163976f, -0.743555f, -0.385396f, -0.015211f, -0.999218f, -0.036505f, 0.250000f, 0.250000f, - -0.296619f, -0.743555f, -0.296619f, -0.027829f, -0.999225f, -0.027829f, 0.500000f, 0.250000f, - -0.252059f, -0.726562f, -0.592418f, -0.054434f, -0.989934f, -0.130641f, 0.250000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, -0.003046f, -0.999876f, -0.015426f, 0.125000f, 0.000000f, - 0.000000f, -0.748315f, -0.236792f, -0.000000f, -0.999874f, -0.015871f, 0.000000f, 0.125000f, - -0.048246f, -0.748315f, -0.232056f, -0.003112f, -0.999874f, -0.015562f, 0.125000f, 0.125000f, - -0.092941f, -0.748315f, -0.218441f, -0.006089f, -0.999875f, -0.014614f, 0.250000f, 0.125000f, - -0.085121f, -0.743555f, -0.409418f, -0.007749f, -0.999219f, -0.038747f, 0.125000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, -0.008711f, -0.999877f, -0.013015f, 0.375000f, 0.000000f, - -0.092941f, -0.748315f, -0.218441f, -0.006089f, -0.999875f, -0.014614f, 0.250000f, 0.125000f, - -0.133195f, -0.748315f, -0.196833f, -0.008815f, -0.999875f, -0.013145f, 0.375000f, 0.125000f, - -0.168122f, -0.748315f, -0.168122f, -0.011177f, -0.999875f, -0.011177f, 0.500000f, 0.125000f, - -0.234998f, -0.743555f, -0.347274f, -0.021947f, -0.999223f, -0.032729f, 0.375000f, 0.250000f, - -0.085121f, -0.743555f, -0.409418f, -0.007750f, -0.999219f, -0.038748f, 0.125000f, 0.250000f, - 0.000000f, -0.736157f, -0.550415f, -0.000000f, -0.997031f, -0.076999f, 0.000000f, 0.375000f, - -0.112147f, -0.736157f, -0.539407f, -0.015100f, -0.997032f, -0.075499f, 0.125000f, 0.375000f, - -0.216038f, -0.736157f, -0.507758f, -0.029541f, -0.997046f, -0.070899f, 0.250000f, 0.375000f, - -0.130846f, -0.726562f, -0.629344f, -0.027734f, -0.989950f, -0.138668f, 0.125000f, 0.500000f, - -0.234998f, -0.743555f, -0.347274f, -0.021948f, -0.999223f, -0.032729f, 0.375000f, 0.250000f, - -0.216038f, -0.736157f, -0.507758f, -0.029541f, -0.997046f, -0.070899f, 0.250000f, 0.375000f, - -0.309608f, -0.736157f, -0.457533f, -0.042765f, -0.997048f, -0.063773f, 0.375000f, 0.375000f, - -0.390795f, -0.736157f, -0.390795f, -0.054226f, -0.997055f, -0.054226f, 0.500000f, 0.375000f, - -0.361230f, -0.726562f, -0.533818f, -0.078549f, -0.990005f, -0.117134f, 0.375000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, -0.036468f, -0.999224f, -0.014895f, 0.750000f, 0.000000f, - -0.296619f, -0.743555f, -0.296619f, -0.027829f, -0.999225f, -0.027829f, 0.500000f, 0.250000f, - -0.385396f, -0.743555f, -0.163976f, -0.036533f, -0.999216f, -0.015222f, 0.750000f, 0.250000f, - -0.417773f, -0.743555f, -0.000000f, -0.039517f, -0.999219f, 0.000000f, 1.000000f, 0.250000f, - -0.592418f, -0.726562f, -0.252059f, -0.130740f, -0.989919f, -0.054475f, 0.750000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, -0.013015f, -0.999877f, -0.008711f, 0.625000f, 0.000000f, - -0.168122f, -0.748315f, -0.168122f, -0.011177f, -0.999875f, -0.011177f, 0.500000f, 0.125000f, - -0.196833f, -0.748315f, -0.133195f, -0.013145f, -0.999875f, -0.008815f, 0.625000f, 0.125000f, - -0.218441f, -0.748315f, -0.092941f, -0.014614f, -0.999875f, -0.006089f, 0.750000f, 0.125000f, - -0.347274f, -0.743555f, -0.234998f, -0.032730f, -0.999223f, -0.021948f, 0.625000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, -0.015426f, -0.999876f, -0.003046f, 0.875000f, 0.000000f, - -0.218441f, -0.748315f, -0.092941f, -0.014614f, -0.999875f, -0.006089f, 0.750000f, 0.125000f, - -0.232056f, -0.748315f, -0.048246f, -0.015564f, -0.999874f, -0.003113f, 0.875000f, 0.125000f, - -0.236792f, -0.748315f, -0.000000f, -0.015871f, -0.999874f, 0.000000f, 1.000000f, 0.125000f, - -0.409418f, -0.743555f, -0.085121f, -0.038753f, -0.999219f, -0.007751f, 0.875000f, 0.250000f, - -0.347274f, -0.743555f, -0.234998f, -0.032731f, -0.999223f, -0.021949f, 0.625000f, 0.250000f, - -0.390795f, -0.736157f, -0.390795f, -0.054226f, -0.997055f, -0.054226f, 0.500000f, 0.375000f, - -0.457533f, -0.736157f, -0.309608f, -0.063776f, -0.997047f, -0.042767f, 0.625000f, 0.375000f, - -0.507758f, -0.736157f, -0.216038f, -0.070899f, -0.997046f, -0.029541f, 0.750000f, 0.375000f, - -0.533818f, -0.726562f, -0.361230f, -0.117140f, -0.990004f, -0.078553f, 0.625000f, 0.500000f, - -0.409418f, -0.743555f, -0.085121f, -0.038753f, -0.999219f, -0.007751f, 0.875000f, 0.250000f, - -0.507758f, -0.736157f, -0.216038f, -0.070899f, -0.997046f, -0.029541f, 0.750000f, 0.375000f, - -0.539407f, -0.736157f, -0.112147f, -0.075510f, -0.997031f, -0.015102f, 0.875000f, 0.375000f, - -0.550415f, -0.736157f, -0.000000f, -0.076999f, -0.997031f, 0.000000f, 1.000000f, 0.375000f, - -0.629344f, -0.726562f, -0.130846f, -0.138687f, -0.989948f, -0.027737f, 0.875000f, 0.500000f, - -0.252059f, -0.726562f, -0.592418f, -0.054434f, -0.989934f, -0.130641f, 0.250000f, 0.500000f, - 0.000000f, -0.702539f, -0.733008f, -0.000000f, -0.857493f, -0.514495f, 0.000000f, 0.750000f, - -0.287706f, -0.702539f, -0.676200f, -0.197995f, -0.857318f, -0.475188f, 0.250000f, 0.750000f, - -0.520436f, -0.702539f, -0.520436f, -0.362711f, -0.858418f, -0.362711f, 0.500000f, 0.750000f, - -0.294375f, -0.675000f, -0.691875f, -0.384615f, 0.000000f, -0.923077f, 0.250000f, 1.000000f, - -0.130846f, -0.726562f, -0.629344f, -0.027734f, -0.989950f, -0.138668f, 0.125000f, 0.500000f, - 0.000000f, -0.715210f, -0.700562f, -0.000000f, -0.964542f, -0.263929f, 0.000000f, 0.625000f, - -0.142739f, -0.715210f, -0.686550f, -0.051758f, -0.964546f, -0.258791f, 0.125000f, 0.625000f, - -0.274970f, -0.715210f, -0.646268f, -0.101276f, -0.964709f, -0.243061f, 0.250000f, 0.625000f, - -0.149350f, -0.702539f, -0.718348f, -0.100897f, -0.857505f, -0.504486f, 0.125000f, 0.750000f, - -0.361230f, -0.726562f, -0.533818f, -0.078549f, -0.990005f, -0.117134f, 0.375000f, 0.500000f, - -0.274970f, -0.715210f, -0.646268f, -0.101276f, -0.964709f, -0.243061f, 0.250000f, 0.625000f, - -0.394066f, -0.715210f, -0.582342f, -0.146613f, -0.964730f, -0.218633f, 0.375000f, 0.625000f, - -0.497399f, -0.715210f, -0.497399f, -0.185918f, -0.964815f, -0.185918f, 0.500000f, 0.625000f, - -0.412317f, -0.702539f, -0.609313f, -0.285959f, -0.858128f, -0.426431f, 0.375000f, 0.750000f, - -0.149350f, -0.702539f, -0.718348f, -0.100897f, -0.857505f, -0.504485f, 0.125000f, 0.750000f, - 0.000000f, -0.688989f, -0.746997f, -0.000000f, -0.464008f, -0.885831f, 0.000000f, 0.875000f, - -0.152201f, -0.688989f, -0.732057f, -0.173724f, -0.464027f, -0.868619f, 0.125000f, 0.875000f, - -0.293196f, -0.688989f, -0.689105f, -0.340521f, -0.464917f, -0.817250f, 0.250000f, 0.875000f, - -0.152812f, -0.675000f, -0.735000f, -0.196116f, 0.000000f, -0.980581f, 0.125000f, 1.000000f, - -0.412317f, -0.702539f, -0.609313f, -0.285959f, -0.858129f, -0.426430f, 0.375000f, 0.750000f, - -0.293196f, -0.688989f, -0.689105f, -0.340521f, -0.464917f, -0.817250f, 0.250000f, 0.875000f, - -0.420186f, -0.688989f, -0.620941f, -0.493068f, -0.465030f, -0.735277f, 0.375000f, 0.875000f, - -0.530368f, -0.688989f, -0.530368f, -0.625825f, -0.465494f, -0.625826f, 0.500000f, 0.875000f, - -0.421875f, -0.675000f, -0.623438f, -0.556953f, 0.000000f, -0.830544f, 0.375000f, 1.000000f, - -0.592418f, -0.726562f, -0.252059f, -0.130740f, -0.989919f, -0.054475f, 0.750000f, 0.500000f, - -0.520436f, -0.702539f, -0.520436f, -0.362711f, -0.858418f, -0.362711f, 0.500000f, 0.750000f, - -0.676200f, -0.702539f, -0.287706f, -0.475457f, -0.857143f, -0.198107f, 0.750000f, 0.750000f, - -0.733008f, -0.702539f, -0.000000f, -0.514495f, -0.857493f, 0.000000f, 1.000000f, 0.750000f, - -0.691875f, -0.675000f, -0.294375f, -0.923077f, 0.000000f, -0.384615f, 0.750000f, 1.000000f, - -0.533818f, -0.726562f, -0.361230f, -0.117140f, -0.990004f, -0.078553f, 0.625000f, 0.500000f, - -0.497399f, -0.715210f, -0.497399f, -0.185918f, -0.964815f, -0.185918f, 0.500000f, 0.625000f, - -0.582342f, -0.715210f, -0.394066f, -0.218643f, -0.964727f, -0.146620f, 0.625000f, 0.625000f, - -0.646268f, -0.715210f, -0.274970f, -0.243061f, -0.964709f, -0.101276f, 0.750000f, 0.625000f, - -0.609313f, -0.702539f, -0.412317f, -0.426446f, -0.858117f, -0.285969f, 0.625000f, 0.750000f, - -0.629344f, -0.726562f, -0.130846f, -0.138687f, -0.989948f, -0.027737f, 0.875000f, 0.500000f, - -0.646268f, -0.715210f, -0.274970f, -0.243061f, -0.964709f, -0.101276f, 0.750000f, 0.625000f, - -0.686550f, -0.715210f, -0.142739f, -0.258825f, -0.964536f, -0.051765f, 0.875000f, 0.625000f, - -0.700562f, -0.715210f, -0.000000f, -0.263929f, -0.964542f, 0.000000f, 1.000000f, 0.625000f, - -0.718348f, -0.702539f, -0.149350f, -0.504538f, -0.857473f, -0.100908f, 0.875000f, 0.750000f, - -0.609313f, -0.702539f, -0.412317f, -0.426445f, -0.858118f, -0.285969f, 0.625000f, 0.750000f, - -0.530368f, -0.688989f, -0.530368f, -0.625826f, -0.465494f, -0.625825f, 0.500000f, 0.875000f, - -0.620941f, -0.688989f, -0.420186f, -0.735284f, -0.465012f, -0.493073f, 0.625000f, 0.875000f, - -0.689105f, -0.688989f, -0.293196f, -0.817250f, -0.464917f, -0.340521f, 0.750000f, 0.875000f, - -0.623438f, -0.675000f, -0.421875f, -0.830544f, 0.000000f, -0.556953f, 0.625000f, 1.000000f, - -0.718348f, -0.702539f, -0.149350f, -0.504537f, -0.857473f, -0.100907f, 0.875000f, 0.750000f, - -0.689105f, -0.688989f, -0.293196f, -0.817250f, -0.464917f, -0.340521f, 0.750000f, 0.875000f, - -0.732057f, -0.688989f, -0.152201f, -0.868645f, -0.463975f, -0.173729f, 0.875000f, 0.875000f, - -0.746997f, -0.688989f, -0.000000f, -0.885831f, -0.464008f, 0.000000f, 1.000000f, 0.875000f, - -0.735000f, -0.675000f, -0.152812f, -0.980581f, 0.000000f, -0.196116f, 0.875000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.099015f, -0.990148f, 0.099015f, 0.000000f, 0.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.099015f, -0.990148f, 0.099015f, 1.000000f, 0.000000f, - -0.750000f, -0.675000f, -0.000000f, -1.000000f, 0.000000f, 0.000000f, 0.000000f, 1.000000f, - 0.000000f, -0.675000f, 0.750000f, 0.000000f, 0.000000f, 1.000000f, 1.000000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.099015f, -0.990148f, 0.099015f, 0.500000f, 0.000000f, - -0.642187f, -0.726562f, -0.000000f, -0.141421f, -0.989949f, 0.000000f, 0.000000f, 0.500000f, - -0.455953f, -0.726562f, 0.455953f, -0.100995f, -0.989748f, 0.100995f, 0.500000f, 0.500000f, - 0.000000f, -0.726562f, 0.642187f, 0.000000f, -0.989949f, 0.141421f, 1.000000f, 0.500000f, - -0.532500f, -0.675000f, 0.532500f, -0.707107f, 0.000000f, 0.707107f, 0.500000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, -0.036468f, -0.999224f, 0.014895f, 0.250000f, 0.000000f, - -0.417773f, -0.743555f, -0.000000f, -0.039517f, -0.999219f, 0.000000f, 0.000000f, 0.250000f, - -0.385396f, -0.743555f, 0.163976f, -0.036505f, -0.999218f, 0.015211f, 0.250000f, 0.250000f, - -0.296619f, -0.743555f, 0.296619f, -0.027829f, -0.999225f, 0.027829f, 0.500000f, 0.250000f, - -0.592418f, -0.726562f, 0.252059f, -0.130641f, -0.989934f, 0.054434f, 0.250000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, -0.015426f, -0.999876f, 0.003046f, 0.125000f, 0.000000f, - -0.236792f, -0.748315f, -0.000000f, -0.015871f, -0.999874f, 0.000000f, 0.000000f, 0.125000f, - -0.232056f, -0.748315f, 0.048246f, -0.015562f, -0.999874f, 0.003112f, 0.125000f, 0.125000f, - -0.218441f, -0.748315f, 0.092941f, -0.014614f, -0.999875f, 0.006089f, 0.250000f, 0.125000f, - -0.409418f, -0.743555f, 0.085121f, -0.038747f, -0.999219f, 0.007749f, 0.125000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, -0.013015f, -0.999877f, 0.008711f, 0.375000f, 0.000000f, - -0.218441f, -0.748315f, 0.092941f, -0.014614f, -0.999875f, 0.006089f, 0.250000f, 0.125000f, - -0.196833f, -0.748315f, 0.133195f, -0.013145f, -0.999875f, 0.008815f, 0.375000f, 0.125000f, - -0.168122f, -0.748315f, 0.168122f, -0.011177f, -0.999875f, 0.011177f, 0.500000f, 0.125000f, - -0.347274f, -0.743555f, 0.234998f, -0.032729f, -0.999223f, 0.021947f, 0.375000f, 0.250000f, - -0.409418f, -0.743555f, 0.085121f, -0.038748f, -0.999219f, 0.007750f, 0.125000f, 0.250000f, - -0.550415f, -0.736157f, -0.000000f, -0.076999f, -0.997031f, 0.000000f, 0.000000f, 0.375000f, - -0.539407f, -0.736157f, 0.112147f, -0.075499f, -0.997032f, 0.015100f, 0.125000f, 0.375000f, - -0.507758f, -0.736157f, 0.216038f, -0.070899f, -0.997046f, 0.029541f, 0.250000f, 0.375000f, - -0.629344f, -0.726562f, 0.130846f, -0.138668f, -0.989950f, 0.027734f, 0.125000f, 0.500000f, - -0.347274f, -0.743555f, 0.234998f, -0.032729f, -0.999223f, 0.021948f, 0.375000f, 0.250000f, - -0.507758f, -0.736157f, 0.216038f, -0.070899f, -0.997046f, 0.029541f, 0.250000f, 0.375000f, - -0.457533f, -0.736157f, 0.309608f, -0.063773f, -0.997048f, 0.042765f, 0.375000f, 0.375000f, - -0.390795f, -0.736157f, 0.390795f, -0.054226f, -0.997055f, 0.054226f, 0.500000f, 0.375000f, - -0.533818f, -0.726562f, 0.361230f, -0.117134f, -0.990005f, 0.078549f, 0.375000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, -0.014895f, -0.999224f, 0.036468f, 0.750000f, 0.000000f, - -0.296619f, -0.743555f, 0.296619f, -0.027829f, -0.999225f, 0.027829f, 0.500000f, 0.250000f, - -0.163976f, -0.743555f, 0.385396f, -0.015222f, -0.999216f, 0.036533f, 0.750000f, 0.250000f, - 0.000000f, -0.743555f, 0.417773f, 0.000000f, -0.999219f, 0.039517f, 1.000000f, 0.250000f, - -0.252059f, -0.726562f, 0.592418f, -0.054475f, -0.989919f, 0.130740f, 0.750000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, -0.008711f, -0.999877f, 0.013015f, 0.625000f, 0.000000f, - -0.168122f, -0.748315f, 0.168122f, -0.011177f, -0.999875f, 0.011177f, 0.500000f, 0.125000f, - -0.133195f, -0.748315f, 0.196833f, -0.008815f, -0.999875f, 0.013145f, 0.625000f, 0.125000f, - -0.092941f, -0.748315f, 0.218441f, -0.006089f, -0.999875f, 0.014614f, 0.750000f, 0.125000f, - -0.234998f, -0.743555f, 0.347274f, -0.021948f, -0.999223f, 0.032730f, 0.625000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, -0.003046f, -0.999876f, 0.015426f, 0.875000f, 0.000000f, - -0.092941f, -0.748315f, 0.218441f, -0.006089f, -0.999875f, 0.014614f, 0.750000f, 0.125000f, - -0.048246f, -0.748315f, 0.232056f, -0.003113f, -0.999874f, 0.015564f, 0.875000f, 0.125000f, - 0.000000f, -0.748315f, 0.236792f, 0.000000f, -0.999874f, 0.015871f, 1.000000f, 0.125000f, - -0.085121f, -0.743555f, 0.409418f, -0.007751f, -0.999219f, 0.038753f, 0.875000f, 0.250000f, - -0.234998f, -0.743555f, 0.347274f, -0.021949f, -0.999223f, 0.032731f, 0.625000f, 0.250000f, - -0.390795f, -0.736157f, 0.390795f, -0.054226f, -0.997055f, 0.054226f, 0.500000f, 0.375000f, - -0.309608f, -0.736157f, 0.457533f, -0.042767f, -0.997047f, 0.063776f, 0.625000f, 0.375000f, - -0.216038f, -0.736157f, 0.507758f, -0.029541f, -0.997046f, 0.070899f, 0.750000f, 0.375000f, - -0.361230f, -0.726562f, 0.533818f, -0.078553f, -0.990004f, 0.117140f, 0.625000f, 0.500000f, - -0.085121f, -0.743555f, 0.409418f, -0.007751f, -0.999219f, 0.038753f, 0.875000f, 0.250000f, - -0.216038f, -0.736157f, 0.507758f, -0.029541f, -0.997046f, 0.070899f, 0.750000f, 0.375000f, - -0.112147f, -0.736157f, 0.539407f, -0.015102f, -0.997031f, 0.075510f, 0.875000f, 0.375000f, - 0.000000f, -0.736157f, 0.550415f, 0.000000f, -0.997031f, 0.076999f, 1.000000f, 0.375000f, - -0.130846f, -0.726562f, 0.629344f, -0.027737f, -0.989948f, 0.138687f, 0.875000f, 0.500000f, - -0.592418f, -0.726562f, 0.252059f, -0.130641f, -0.989934f, 0.054434f, 0.250000f, 0.500000f, - -0.733008f, -0.702539f, -0.000000f, -0.514495f, -0.857493f, 0.000000f, 0.000000f, 0.750000f, - -0.676200f, -0.702539f, 0.287706f, -0.475188f, -0.857318f, 0.197995f, 0.250000f, 0.750000f, - -0.520436f, -0.702539f, 0.520436f, -0.362711f, -0.858418f, 0.362711f, 0.500000f, 0.750000f, - -0.691875f, -0.675000f, 0.294375f, -0.923077f, 0.000000f, 0.384615f, 0.250000f, 1.000000f, - -0.629344f, -0.726562f, 0.130846f, -0.138668f, -0.989950f, 0.027734f, 0.125000f, 0.500000f, - -0.700562f, -0.715210f, -0.000000f, -0.263929f, -0.964542f, 0.000000f, 0.000000f, 0.625000f, - -0.686550f, -0.715210f, 0.142739f, -0.258791f, -0.964546f, 0.051758f, 0.125000f, 0.625000f, - -0.646268f, -0.715210f, 0.274970f, -0.243061f, -0.964709f, 0.101276f, 0.250000f, 0.625000f, - -0.718348f, -0.702539f, 0.149350f, -0.504486f, -0.857505f, 0.100897f, 0.125000f, 0.750000f, - -0.533818f, -0.726562f, 0.361230f, -0.117134f, -0.990005f, 0.078549f, 0.375000f, 0.500000f, - -0.646268f, -0.715210f, 0.274970f, -0.243061f, -0.964709f, 0.101276f, 0.250000f, 0.625000f, - -0.582342f, -0.715210f, 0.394066f, -0.218633f, -0.964730f, 0.146613f, 0.375000f, 0.625000f, - -0.497399f, -0.715210f, 0.497399f, -0.185918f, -0.964815f, 0.185918f, 0.500000f, 0.625000f, - -0.609313f, -0.702539f, 0.412317f, -0.426431f, -0.858128f, 0.285959f, 0.375000f, 0.750000f, - -0.718348f, -0.702539f, 0.149350f, -0.504485f, -0.857505f, 0.100897f, 0.125000f, 0.750000f, - -0.746997f, -0.688989f, -0.000000f, -0.885831f, -0.464008f, 0.000000f, 0.000000f, 0.875000f, - -0.732057f, -0.688989f, 0.152201f, -0.868619f, -0.464027f, 0.173724f, 0.125000f, 0.875000f, - -0.689105f, -0.688989f, 0.293196f, -0.817250f, -0.464917f, 0.340521f, 0.250000f, 0.875000f, - -0.735000f, -0.675000f, 0.152812f, -0.980581f, 0.000000f, 0.196116f, 0.125000f, 1.000000f, - -0.609313f, -0.702539f, 0.412317f, -0.426430f, -0.858129f, 0.285959f, 0.375000f, 0.750000f, - -0.689105f, -0.688989f, 0.293196f, -0.817250f, -0.464917f, 0.340521f, 0.250000f, 0.875000f, - -0.620941f, -0.688989f, 0.420186f, -0.735277f, -0.465030f, 0.493068f, 0.375000f, 0.875000f, - -0.530368f, -0.688989f, 0.530368f, -0.625826f, -0.465494f, 0.625825f, 0.500000f, 0.875000f, - -0.623438f, -0.675000f, 0.421875f, -0.830544f, 0.000000f, 0.556953f, 0.375000f, 1.000000f, - -0.252059f, -0.726562f, 0.592418f, -0.054475f, -0.989919f, 0.130740f, 0.750000f, 0.500000f, - -0.520436f, -0.702539f, 0.520436f, -0.362711f, -0.858418f, 0.362711f, 0.500000f, 0.750000f, - -0.287706f, -0.702539f, 0.676200f, -0.198107f, -0.857143f, 0.475457f, 0.750000f, 0.750000f, - 0.000000f, -0.702539f, 0.733008f, 0.000000f, -0.857493f, 0.514495f, 1.000000f, 0.750000f, - -0.294375f, -0.675000f, 0.691875f, -0.384615f, 0.000000f, 0.923077f, 0.750000f, 1.000000f, - -0.361230f, -0.726562f, 0.533818f, -0.078553f, -0.990004f, 0.117140f, 0.625000f, 0.500000f, - -0.497399f, -0.715210f, 0.497399f, -0.185918f, -0.964815f, 0.185918f, 0.500000f, 0.625000f, - -0.394066f, -0.715210f, 0.582342f, -0.146620f, -0.964727f, 0.218643f, 0.625000f, 0.625000f, - -0.274970f, -0.715210f, 0.646268f, -0.101276f, -0.964709f, 0.243061f, 0.750000f, 0.625000f, - -0.412317f, -0.702539f, 0.609313f, -0.285969f, -0.858117f, 0.426446f, 0.625000f, 0.750000f, - -0.130846f, -0.726562f, 0.629344f, -0.027737f, -0.989948f, 0.138687f, 0.875000f, 0.500000f, - -0.274970f, -0.715210f, 0.646268f, -0.101276f, -0.964709f, 0.243061f, 0.750000f, 0.625000f, - -0.142739f, -0.715210f, 0.686550f, -0.051765f, -0.964536f, 0.258825f, 0.875000f, 0.625000f, - 0.000000f, -0.715210f, 0.700562f, 0.000000f, -0.964542f, 0.263929f, 1.000000f, 0.625000f, - -0.149350f, -0.702539f, 0.718348f, -0.100908f, -0.857473f, 0.504538f, 0.875000f, 0.750000f, - -0.412317f, -0.702539f, 0.609313f, -0.285969f, -0.858118f, 0.426445f, 0.625000f, 0.750000f, - -0.530368f, -0.688989f, 0.530368f, -0.625825f, -0.465494f, 0.625826f, 0.500000f, 0.875000f, - -0.420186f, -0.688989f, 0.620941f, -0.493073f, -0.465012f, 0.735284f, 0.625000f, 0.875000f, - -0.293196f, -0.688989f, 0.689105f, -0.340521f, -0.464917f, 0.817250f, 0.750000f, 0.875000f, - -0.421875f, -0.675000f, 0.623438f, -0.556953f, 0.000000f, 0.830544f, 0.625000f, 1.000000f, - -0.149350f, -0.702539f, 0.718348f, -0.100907f, -0.857473f, 0.504537f, 0.875000f, 0.750000f, - -0.293196f, -0.688989f, 0.689105f, -0.340521f, -0.464917f, 0.817250f, 0.750000f, 0.875000f, - -0.152201f, -0.688989f, 0.732057f, -0.173729f, -0.463975f, 0.868645f, 0.875000f, 0.875000f, - 0.000000f, -0.688989f, 0.746997f, 0.000000f, -0.464008f, 0.885831f, 1.000000f, 0.875000f, - -0.152812f, -0.675000f, 0.735000f, -0.196116f, 0.000000f, 0.980581f, 0.875000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.099015f, -0.990148f, 0.099015f, 0.000000f, 0.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.099015f, -0.990148f, 0.099015f, 1.000000f, 0.000000f, - 0.000000f, -0.675000f, 0.750000f, 0.000000f, 0.000000f, 1.000000f, 0.000000f, 1.000000f, - 0.750000f, -0.675000f, -0.000000f, 1.000000f, -0.000000f, 0.000000f, 1.000000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.099015f, -0.990148f, 0.099015f, 0.500000f, 0.000000f, - 0.000000f, -0.726562f, 0.642187f, 0.000000f, -0.989949f, 0.141421f, 0.000000f, 0.500000f, - 0.455953f, -0.726562f, 0.455953f, 0.100995f, -0.989748f, 0.100995f, 0.500000f, 0.500000f, - 0.642187f, -0.726562f, -0.000000f, 0.141421f, -0.989949f, 0.000000f, 1.000000f, 0.500000f, - 0.532500f, -0.675000f, 0.532500f, 0.707107f, -0.000000f, 0.707107f, 0.500000f, 1.000000f, - 0.000000f, -0.750000f, -0.000000f, 0.014895f, -0.999224f, 0.036468f, 0.250000f, 0.000000f, - 0.000000f, -0.743555f, 0.417773f, 0.000000f, -0.999219f, 0.039517f, 0.000000f, 0.250000f, - 0.163976f, -0.743555f, 0.385396f, 0.015211f, -0.999218f, 0.036505f, 0.250000f, 0.250000f, - 0.296619f, -0.743555f, 0.296619f, 0.027829f, -0.999225f, 0.027829f, 0.500000f, 0.250000f, - 0.252059f, -0.726562f, 0.592418f, 0.054434f, -0.989934f, 0.130641f, 0.250000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, 0.003046f, -0.999876f, 0.015426f, 0.125000f, 0.000000f, - 0.000000f, -0.748315f, 0.236792f, 0.000000f, -0.999874f, 0.015871f, 0.000000f, 0.125000f, - 0.048246f, -0.748315f, 0.232056f, 0.003112f, -0.999874f, 0.015562f, 0.125000f, 0.125000f, - 0.092941f, -0.748315f, 0.218441f, 0.006089f, -0.999875f, 0.014614f, 0.250000f, 0.125000f, - 0.085121f, -0.743555f, 0.409418f, 0.007749f, -0.999219f, 0.038747f, 0.125000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, 0.008711f, -0.999877f, 0.013015f, 0.375000f, 0.000000f, - 0.092941f, -0.748315f, 0.218441f, 0.006089f, -0.999875f, 0.014614f, 0.250000f, 0.125000f, - 0.133195f, -0.748315f, 0.196833f, 0.008815f, -0.999875f, 0.013145f, 0.375000f, 0.125000f, - 0.168122f, -0.748315f, 0.168122f, 0.011177f, -0.999875f, 0.011177f, 0.500000f, 0.125000f, - 0.234998f, -0.743555f, 0.347274f, 0.021947f, -0.999223f, 0.032729f, 0.375000f, 0.250000f, - 0.085121f, -0.743555f, 0.409418f, 0.007750f, -0.999219f, 0.038748f, 0.125000f, 0.250000f, - 0.000000f, -0.736157f, 0.550415f, 0.000000f, -0.997031f, 0.076999f, 0.000000f, 0.375000f, - 0.112147f, -0.736157f, 0.539407f, 0.015100f, -0.997032f, 0.075499f, 0.125000f, 0.375000f, - 0.216038f, -0.736157f, 0.507758f, 0.029541f, -0.997046f, 0.070899f, 0.250000f, 0.375000f, - 0.130846f, -0.726562f, 0.629344f, 0.027734f, -0.989950f, 0.138668f, 0.125000f, 0.500000f, - 0.234998f, -0.743555f, 0.347274f, 0.021948f, -0.999223f, 0.032729f, 0.375000f, 0.250000f, - 0.216038f, -0.736157f, 0.507758f, 0.029541f, -0.997046f, 0.070899f, 0.250000f, 0.375000f, - 0.309608f, -0.736157f, 0.457533f, 0.042765f, -0.997048f, 0.063773f, 0.375000f, 0.375000f, - 0.390795f, -0.736157f, 0.390795f, 0.054226f, -0.997055f, 0.054226f, 0.500000f, 0.375000f, - 0.361230f, -0.726562f, 0.533818f, 0.078549f, -0.990005f, 0.117134f, 0.375000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, 0.036468f, -0.999224f, 0.014895f, 0.750000f, 0.000000f, - 0.296619f, -0.743555f, 0.296619f, 0.027829f, -0.999225f, 0.027829f, 0.500000f, 0.250000f, - 0.385396f, -0.743555f, 0.163976f, 0.036533f, -0.999216f, 0.015222f, 0.750000f, 0.250000f, - 0.417773f, -0.743555f, -0.000000f, 0.039517f, -0.999219f, 0.000000f, 1.000000f, 0.250000f, - 0.592418f, -0.726562f, 0.252059f, 0.130740f, -0.989919f, 0.054475f, 0.750000f, 0.500000f, - 0.000000f, -0.750000f, -0.000000f, 0.013015f, -0.999877f, 0.008711f, 0.625000f, 0.000000f, - 0.168122f, -0.748315f, 0.168122f, 0.011177f, -0.999875f, 0.011177f, 0.500000f, 0.125000f, - 0.196833f, -0.748315f, 0.133195f, 0.013145f, -0.999875f, 0.008815f, 0.625000f, 0.125000f, - 0.218441f, -0.748315f, 0.092941f, 0.014614f, -0.999875f, 0.006089f, 0.750000f, 0.125000f, - 0.347274f, -0.743555f, 0.234998f, 0.032730f, -0.999223f, 0.021948f, 0.625000f, 0.250000f, - 0.000000f, -0.750000f, -0.000000f, 0.015426f, -0.999876f, 0.003046f, 0.875000f, 0.000000f, - 0.218441f, -0.748315f, 0.092941f, 0.014614f, -0.999875f, 0.006089f, 0.750000f, 0.125000f, - 0.232056f, -0.748315f, 0.048246f, 0.015564f, -0.999874f, 0.003113f, 0.875000f, 0.125000f, - 0.236792f, -0.748315f, -0.000000f, 0.015871f, -0.999874f, 0.000000f, 1.000000f, 0.125000f, - 0.409418f, -0.743555f, 0.085121f, 0.038753f, -0.999219f, 0.007751f, 0.875000f, 0.250000f, - 0.347274f, -0.743555f, 0.234998f, 0.032731f, -0.999223f, 0.021949f, 0.625000f, 0.250000f, - 0.390795f, -0.736157f, 0.390795f, 0.054226f, -0.997055f, 0.054226f, 0.500000f, 0.375000f, - 0.457533f, -0.736157f, 0.309608f, 0.063776f, -0.997047f, 0.042767f, 0.625000f, 0.375000f, - 0.507758f, -0.736157f, 0.216038f, 0.070899f, -0.997046f, 0.029541f, 0.750000f, 0.375000f, - 0.533818f, -0.726562f, 0.361230f, 0.117140f, -0.990004f, 0.078553f, 0.625000f, 0.500000f, - 0.409418f, -0.743555f, 0.085121f, 0.038753f, -0.999219f, 0.007751f, 0.875000f, 0.250000f, - 0.507758f, -0.736157f, 0.216038f, 0.070899f, -0.997046f, 0.029541f, 0.750000f, 0.375000f, - 0.539407f, -0.736157f, 0.112147f, 0.075510f, -0.997031f, 0.015102f, 0.875000f, 0.375000f, - 0.550415f, -0.736157f, -0.000000f, 0.076999f, -0.997031f, 0.000000f, 1.000000f, 0.375000f, - 0.629344f, -0.726562f, 0.130846f, 0.138687f, -0.989948f, 0.027737f, 0.875000f, 0.500000f, - 0.252059f, -0.726562f, 0.592418f, 0.054434f, -0.989934f, 0.130641f, 0.250000f, 0.500000f, - 0.000000f, -0.702539f, 0.733008f, 0.000000f, -0.857493f, 0.514495f, 0.000000f, 0.750000f, - 0.287706f, -0.702539f, 0.676200f, 0.197995f, -0.857318f, 0.475188f, 0.250000f, 0.750000f, - 0.520436f, -0.702539f, 0.520436f, 0.362711f, -0.858418f, 0.362711f, 0.500000f, 0.750000f, - 0.294375f, -0.675000f, 0.691875f, 0.384615f, -0.000000f, 0.923077f, 0.250000f, 1.000000f, - 0.130846f, -0.726562f, 0.629344f, 0.027734f, -0.989950f, 0.138668f, 0.125000f, 0.500000f, - 0.000000f, -0.715210f, 0.700562f, 0.000000f, -0.964542f, 0.263929f, 0.000000f, 0.625000f, - 0.142739f, -0.715210f, 0.686550f, 0.051758f, -0.964546f, 0.258791f, 0.125000f, 0.625000f, - 0.274970f, -0.715210f, 0.646268f, 0.101276f, -0.964709f, 0.243061f, 0.250000f, 0.625000f, - 0.149350f, -0.702539f, 0.718348f, 0.100897f, -0.857505f, 0.504486f, 0.125000f, 0.750000f, - 0.361230f, -0.726562f, 0.533818f, 0.078549f, -0.990005f, 0.117134f, 0.375000f, 0.500000f, - 0.274970f, -0.715210f, 0.646268f, 0.101276f, -0.964709f, 0.243061f, 0.250000f, 0.625000f, - 0.394066f, -0.715210f, 0.582342f, 0.146613f, -0.964730f, 0.218633f, 0.375000f, 0.625000f, - 0.497399f, -0.715210f, 0.497399f, 0.185918f, -0.964815f, 0.185918f, 0.500000f, 0.625000f, - 0.412317f, -0.702539f, 0.609313f, 0.285959f, -0.858128f, 0.426431f, 0.375000f, 0.750000f, - 0.149350f, -0.702539f, 0.718348f, 0.100897f, -0.857505f, 0.504485f, 0.125000f, 0.750000f, - 0.000000f, -0.688989f, 0.746997f, 0.000000f, -0.464008f, 0.885831f, 0.000000f, 0.875000f, - 0.152201f, -0.688989f, 0.732057f, 0.173724f, -0.464027f, 0.868619f, 0.125000f, 0.875000f, - 0.293196f, -0.688989f, 0.689105f, 0.340521f, -0.464917f, 0.817250f, 0.250000f, 0.875000f, - 0.152812f, -0.675000f, 0.735000f, 0.196116f, -0.000000f, 0.980581f, 0.125000f, 1.000000f, - 0.412317f, -0.702539f, 0.609313f, 0.285959f, -0.858129f, 0.426430f, 0.375000f, 0.750000f, - 0.293196f, -0.688989f, 0.689105f, 0.340521f, -0.464917f, 0.817250f, 0.250000f, 0.875000f, - 0.420186f, -0.688989f, 0.620941f, 0.493068f, -0.465030f, 0.735277f, 0.375000f, 0.875000f, - 0.530368f, -0.688989f, 0.530368f, 0.625825f, -0.465494f, 0.625826f, 0.500000f, 0.875000f, - 0.421875f, -0.675000f, 0.623438f, 0.556953f, -0.000000f, 0.830544f, 0.375000f, 1.000000f, - 0.592418f, -0.726562f, 0.252059f, 0.130740f, -0.989919f, 0.054475f, 0.750000f, 0.500000f, - 0.520436f, -0.702539f, 0.520436f, 0.362711f, -0.858418f, 0.362711f, 0.500000f, 0.750000f, - 0.676200f, -0.702539f, 0.287706f, 0.475457f, -0.857143f, 0.198107f, 0.750000f, 0.750000f, - 0.733008f, -0.702539f, -0.000000f, 0.514495f, -0.857493f, 0.000000f, 1.000000f, 0.750000f, - 0.691875f, -0.675000f, 0.294375f, 0.923077f, -0.000000f, 0.384615f, 0.750000f, 1.000000f, - 0.533818f, -0.726562f, 0.361230f, 0.117140f, -0.990004f, 0.078553f, 0.625000f, 0.500000f, - 0.497399f, -0.715210f, 0.497399f, 0.185918f, -0.964815f, 0.185918f, 0.500000f, 0.625000f, - 0.582342f, -0.715210f, 0.394066f, 0.218643f, -0.964727f, 0.146620f, 0.625000f, 0.625000f, - 0.646268f, -0.715210f, 0.274970f, 0.243061f, -0.964709f, 0.101276f, 0.750000f, 0.625000f, - 0.609313f, -0.702539f, 0.412317f, 0.426446f, -0.858117f, 0.285969f, 0.625000f, 0.750000f, - 0.629344f, -0.726562f, 0.130846f, 0.138687f, -0.989948f, 0.027737f, 0.875000f, 0.500000f, - 0.646268f, -0.715210f, 0.274970f, 0.243061f, -0.964709f, 0.101276f, 0.750000f, 0.625000f, - 0.686550f, -0.715210f, 0.142739f, 0.258825f, -0.964536f, 0.051765f, 0.875000f, 0.625000f, - 0.700562f, -0.715210f, -0.000000f, 0.263929f, -0.964542f, 0.000000f, 1.000000f, 0.625000f, - 0.718348f, -0.702539f, 0.149350f, 0.504538f, -0.857473f, 0.100908f, 0.875000f, 0.750000f, - 0.609313f, -0.702539f, 0.412317f, 0.426445f, -0.858118f, 0.285969f, 0.625000f, 0.750000f, - 0.530368f, -0.688989f, 0.530368f, 0.625826f, -0.465494f, 0.625825f, 0.500000f, 0.875000f, - 0.620941f, -0.688989f, 0.420186f, 0.735284f, -0.465012f, 0.493073f, 0.625000f, 0.875000f, - 0.689105f, -0.688989f, 0.293196f, 0.817250f, -0.464917f, 0.340521f, 0.750000f, 0.875000f, - 0.623438f, -0.675000f, 0.421875f, 0.830544f, -0.000000f, 0.556953f, 0.625000f, 1.000000f, - 0.718348f, -0.702539f, 0.149350f, 0.504537f, -0.857473f, 0.100907f, 0.875000f, 0.750000f, - 0.689105f, -0.688989f, 0.293196f, 0.817250f, -0.464917f, 0.340521f, 0.750000f, 0.875000f, - 0.732057f, -0.688989f, 0.152201f, 0.868645f, -0.463975f, 0.173729f, 0.875000f, 0.875000f, - 0.746997f, -0.688989f, -0.000000f, 0.885831f, -0.464008f, 0.000000f, 1.000000f, 0.875000f, - 0.735000f, -0.675000f, 0.152812f, 0.980581f, -0.000000f, 0.196116f, 0.875000f, 1.000000f -}; - -static ushort const teapotTriangleData[] = { - 0, 14, 15, 14, 16, 15, 14, 9, 16, 9, 17, 16, - 15, 16, 10, 16, 18, 10, 16, 17, 18, 17, 11, 18, - 9, 19, 20, 19, 21, 20, 19, 4, 21, 4, 22, 21, - 20, 21, 11, 21, 23, 11, 21, 22, 23, 22, 12, 23, - 10, 24, 25, 24, 26, 25, 24, 11, 26, 11, 27, 26, - 25, 26, 5, 26, 28, 5, 26, 27, 28, 27, 13, 28, - 11, 29, 30, 29, 31, 30, 29, 12, 31, 12, 32, 31, - 30, 31, 13, 31, 33, 13, 31, 32, 33, 32, 6, 33, - 4, 39, 40, 39, 41, 40, 39, 34, 41, 34, 42, 41, - 40, 41, 35, 41, 43, 35, 41, 42, 43, 42, 36, 43, - 34, 44, 45, 44, 46, 45, 44, 1, 46, 1, 47, 46, - 45, 46, 36, 46, 48, 36, 46, 47, 48, 47, 37, 48, - 35, 49, 50, 49, 51, 50, 49, 36, 51, 36, 52, 51, - 50, 51, 6, 51, 53, 6, 51, 52, 53, 52, 38, 53, - 36, 54, 55, 54, 56, 55, 54, 37, 56, 37, 57, 56, - 55, 56, 38, 56, 58, 38, 56, 57, 58, 57, 7, 58, - 5, 64, 65, 64, 66, 65, 64, 59, 66, 59, 67, 66, - 65, 66, 60, 66, 68, 60, 66, 67, 68, 67, 61, 68, - 59, 69, 70, 69, 71, 70, 69, 6, 71, 6, 72, 71, - 70, 71, 61, 71, 73, 61, 71, 72, 73, 72, 62, 73, - 60, 74, 75, 74, 76, 75, 74, 61, 76, 61, 77, 76, - 75, 76, 2, 76, 78, 2, 76, 77, 78, 77, 63, 78, - 61, 79, 80, 79, 81, 80, 79, 62, 81, 62, 82, 81, - 80, 81, 63, 81, 83, 63, 81, 82, 83, 82, 8, 83, - 6, 89, 90, 89, 91, 90, 89, 84, 91, 84, 92, 91, - 90, 91, 85, 91, 93, 85, 91, 92, 93, 92, 86, 93, - 84, 94, 95, 94, 96, 95, 94, 7, 96, 7, 97, 96, - 95, 96, 86, 96, 98, 86, 96, 97, 98, 97, 87, 98, - 85, 99, 100, 99, 101, 100, 99, 86, 101, 86, 102, 101, - 100, 101, 8, 101, 103, 8, 101, 102, 103, 102, 88, 103, - 86, 104, 105, 104, 106, 105, 104, 87, 106, 87, 107, 106, - 105, 106, 88, 106, 108, 88, 106, 107, 108, 107, 3, 108, - 109, 123, 124, 123, 125, 124, 123, 118, 125, 118, 126, 125, - 124, 125, 119, 125, 127, 119, 125, 126, 127, 126, 120, 127, - 118, 128, 129, 128, 130, 129, 128, 113, 130, 113, 131, 130, - 129, 130, 120, 130, 132, 120, 130, 131, 132, 131, 121, 132, - 119, 133, 134, 133, 135, 134, 133, 120, 135, 120, 136, 135, - 134, 135, 114, 135, 137, 114, 135, 136, 137, 136, 122, 137, - 120, 138, 139, 138, 140, 139, 138, 121, 140, 121, 141, 140, - 139, 140, 122, 140, 142, 122, 140, 141, 142, 141, 115, 142, - 113, 148, 149, 148, 150, 149, 148, 143, 150, 143, 151, 150, - 149, 150, 144, 150, 152, 144, 150, 151, 152, 151, 145, 152, - 143, 153, 154, 153, 155, 154, 153, 110, 155, 110, 156, 155, - 154, 155, 145, 155, 157, 145, 155, 156, 157, 156, 146, 157, - 144, 158, 159, 158, 160, 159, 158, 145, 160, 145, 161, 160, - 159, 160, 115, 160, 162, 115, 160, 161, 162, 161, 147, 162, - 145, 163, 164, 163, 165, 164, 163, 146, 165, 146, 166, 165, - 164, 165, 147, 165, 167, 147, 165, 166, 167, 166, 116, 167, - 114, 173, 174, 173, 175, 174, 173, 168, 175, 168, 176, 175, - 174, 175, 169, 175, 177, 169, 175, 176, 177, 176, 170, 177, - 168, 178, 179, 178, 180, 179, 178, 115, 180, 115, 181, 180, - 179, 180, 170, 180, 182, 170, 180, 181, 182, 181, 171, 182, - 169, 183, 184, 183, 185, 184, 183, 170, 185, 170, 186, 185, - 184, 185, 111, 185, 187, 111, 185, 186, 187, 186, 172, 187, - 170, 188, 189, 188, 190, 189, 188, 171, 190, 171, 191, 190, - 189, 190, 172, 190, 192, 172, 190, 191, 192, 191, 117, 192, - 115, 198, 199, 198, 200, 199, 198, 193, 200, 193, 201, 200, - 199, 200, 194, 200, 202, 194, 200, 201, 202, 201, 195, 202, - 193, 203, 204, 203, 205, 204, 203, 116, 205, 116, 206, 205, - 204, 205, 195, 205, 207, 195, 205, 206, 207, 206, 196, 207, - 194, 208, 209, 208, 210, 209, 208, 195, 210, 195, 211, 210, - 209, 210, 117, 210, 212, 117, 210, 211, 212, 211, 197, 212, - 195, 213, 214, 213, 215, 214, 213, 196, 215, 196, 216, 215, - 214, 215, 197, 215, 217, 197, 215, 216, 217, 216, 112, 217, - 218, 232, 233, 232, 234, 233, 232, 227, 234, 227, 235, 234, - 233, 234, 228, 234, 236, 228, 234, 235, 236, 235, 229, 236, - 227, 237, 238, 237, 239, 238, 237, 222, 239, 222, 240, 239, - 238, 239, 229, 239, 241, 229, 239, 240, 241, 240, 230, 241, - 228, 242, 243, 242, 244, 243, 242, 229, 244, 229, 245, 244, - 243, 244, 223, 244, 246, 223, 244, 245, 246, 245, 231, 246, - 229, 247, 248, 247, 249, 248, 247, 230, 249, 230, 250, 249, - 248, 249, 231, 249, 251, 231, 249, 250, 251, 250, 224, 251, - 222, 257, 258, 257, 259, 258, 257, 252, 259, 252, 260, 259, - 258, 259, 253, 259, 261, 253, 259, 260, 261, 260, 254, 261, - 252, 262, 263, 262, 264, 263, 262, 219, 264, 219, 265, 264, - 263, 264, 254, 264, 266, 254, 264, 265, 266, 265, 255, 266, - 253, 267, 268, 267, 269, 268, 267, 254, 269, 254, 270, 269, - 268, 269, 224, 269, 271, 224, 269, 270, 271, 270, 256, 271, - 254, 272, 273, 272, 274, 273, 272, 255, 274, 255, 275, 274, - 273, 274, 256, 274, 276, 256, 274, 275, 276, 275, 225, 276, - 223, 282, 283, 282, 284, 283, 282, 277, 284, 277, 285, 284, - 283, 284, 278, 284, 286, 278, 284, 285, 286, 285, 279, 286, - 277, 287, 288, 287, 289, 288, 287, 224, 289, 224, 290, 289, - 288, 289, 279, 289, 291, 279, 289, 290, 291, 290, 280, 291, - 278, 292, 293, 292, 294, 293, 292, 279, 294, 279, 295, 294, - 293, 294, 220, 294, 296, 220, 294, 295, 296, 295, 281, 296, - 279, 297, 298, 297, 299, 298, 297, 280, 299, 280, 300, 299, - 298, 299, 281, 299, 301, 281, 299, 300, 301, 300, 226, 301, - 224, 307, 308, 307, 309, 308, 307, 302, 309, 302, 310, 309, - 308, 309, 303, 309, 311, 303, 309, 310, 311, 310, 304, 311, - 302, 312, 313, 312, 314, 313, 312, 225, 314, 225, 315, 314, - 313, 314, 304, 314, 316, 304, 314, 315, 316, 315, 305, 316, - 303, 317, 318, 317, 319, 318, 317, 304, 319, 304, 320, 319, - 318, 319, 226, 319, 321, 226, 319, 320, 321, 320, 306, 321, - 304, 322, 323, 322, 324, 323, 322, 305, 324, 305, 325, 324, - 323, 324, 306, 324, 326, 306, 324, 325, 326, 325, 221, 326, - 327, 341, 342, 341, 343, 342, 341, 336, 343, 336, 344, 343, - 342, 343, 337, 343, 345, 337, 343, 344, 345, 344, 338, 345, - 336, 346, 347, 346, 348, 347, 346, 331, 348, 331, 349, 348, - 347, 348, 338, 348, 350, 338, 348, 349, 350, 349, 339, 350, - 337, 351, 352, 351, 353, 352, 351, 338, 353, 338, 354, 353, - 352, 353, 332, 353, 355, 332, 353, 354, 355, 354, 340, 355, - 338, 356, 357, 356, 358, 357, 356, 339, 358, 339, 359, 358, - 357, 358, 340, 358, 360, 340, 358, 359, 360, 359, 333, 360, - 331, 366, 367, 366, 368, 367, 366, 361, 368, 361, 369, 368, - 367, 368, 362, 368, 370, 362, 368, 369, 370, 369, 363, 370, - 361, 371, 372, 371, 373, 372, 371, 328, 373, 328, 374, 373, - 372, 373, 363, 373, 375, 363, 373, 374, 375, 374, 364, 375, - 362, 376, 377, 376, 378, 377, 376, 363, 378, 363, 379, 378, - 377, 378, 333, 378, 380, 333, 378, 379, 380, 379, 365, 380, - 363, 381, 382, 381, 383, 382, 381, 364, 383, 364, 384, 383, - 382, 383, 365, 383, 385, 365, 383, 384, 385, 384, 334, 385, - 332, 391, 392, 391, 393, 392, 391, 386, 393, 386, 394, 393, - 392, 393, 387, 393, 395, 387, 393, 394, 395, 394, 388, 395, - 386, 396, 397, 396, 398, 397, 396, 333, 398, 333, 399, 398, - 397, 398, 388, 398, 400, 388, 398, 399, 400, 399, 389, 400, - 387, 401, 402, 401, 403, 402, 401, 388, 403, 388, 404, 403, - 402, 403, 329, 403, 405, 329, 403, 404, 405, 404, 390, 405, - 388, 406, 407, 406, 408, 407, 406, 389, 408, 389, 409, 408, - 407, 408, 390, 408, 410, 390, 408, 409, 410, 409, 335, 410, - 333, 416, 417, 416, 418, 417, 416, 411, 418, 411, 419, 418, - 417, 418, 412, 418, 420, 412, 418, 419, 420, 419, 413, 420, - 411, 421, 422, 421, 423, 422, 421, 334, 423, 334, 424, 423, - 422, 423, 413, 423, 425, 413, 423, 424, 425, 424, 414, 425, - 412, 426, 427, 426, 428, 427, 426, 413, 428, 413, 429, 428, - 427, 428, 335, 428, 430, 335, 428, 429, 430, 429, 415, 430, - 413, 431, 432, 431, 433, 432, 431, 414, 433, 414, 434, 433, - 432, 433, 415, 433, 435, 415, 433, 434, 435, 434, 330, 435, - 436, 450, 451, 450, 452, 451, 450, 445, 452, 445, 453, 452, - 451, 452, 446, 452, 454, 446, 452, 453, 454, 453, 447, 454, - 445, 455, 456, 455, 457, 456, 455, 440, 457, 440, 458, 457, - 456, 457, 447, 457, 459, 447, 457, 458, 459, 458, 448, 459, - 446, 460, 461, 460, 462, 461, 460, 447, 462, 447, 463, 462, - 461, 462, 441, 462, 464, 441, 462, 463, 464, 463, 449, 464, - 447, 465, 466, 465, 467, 466, 465, 448, 467, 448, 468, 467, - 466, 467, 449, 467, 469, 449, 467, 468, 469, 468, 442, 469, - 440, 475, 476, 475, 477, 476, 475, 470, 477, 470, 478, 477, - 476, 477, 471, 477, 479, 471, 477, 478, 479, 478, 472, 479, - 470, 480, 481, 480, 482, 481, 480, 437, 482, 437, 483, 482, - 481, 482, 472, 482, 484, 472, 482, 483, 484, 483, 473, 484, - 471, 485, 486, 485, 487, 486, 485, 472, 487, 472, 488, 487, - 486, 487, 442, 487, 489, 442, 487, 488, 489, 488, 474, 489, - 472, 490, 491, 490, 492, 491, 490, 473, 492, 473, 493, 492, - 491, 492, 474, 492, 494, 474, 492, 493, 494, 493, 443, 494, - 441, 500, 501, 500, 502, 501, 500, 495, 502, 495, 503, 502, - 501, 502, 496, 502, 504, 496, 502, 503, 504, 503, 497, 504, - 495, 505, 506, 505, 507, 506, 505, 442, 507, 442, 508, 507, - 506, 507, 497, 507, 509, 497, 507, 508, 509, 508, 498, 509, - 496, 510, 511, 510, 512, 511, 510, 497, 512, 497, 513, 512, - 511, 512, 438, 512, 514, 438, 512, 513, 514, 513, 499, 514, - 497, 515, 516, 515, 517, 516, 515, 498, 517, 498, 518, 517, - 516, 517, 499, 517, 519, 499, 517, 518, 519, 518, 444, 519, - 442, 525, 526, 525, 527, 526, 525, 520, 527, 520, 528, 527, - 526, 527, 521, 527, 529, 521, 527, 528, 529, 528, 522, 529, - 520, 530, 531, 530, 532, 531, 530, 443, 532, 443, 533, 532, - 531, 532, 522, 532, 534, 522, 532, 533, 534, 533, 523, 534, - 521, 535, 536, 535, 537, 536, 535, 522, 537, 522, 538, 537, - 536, 537, 444, 537, 539, 444, 537, 538, 539, 538, 524, 539, - 522, 540, 541, 540, 542, 541, 540, 523, 542, 523, 543, 542, - 541, 542, 524, 542, 544, 524, 542, 543, 544, 543, 439, 544, - 545, 559, 560, 559, 561, 560, 559, 554, 561, 554, 562, 561, - 560, 561, 555, 561, 563, 555, 561, 562, 563, 562, 556, 563, - 554, 564, 565, 564, 566, 565, 564, 549, 566, 549, 567, 566, - 565, 566, 556, 566, 568, 556, 566, 567, 568, 567, 557, 568, - 555, 569, 570, 569, 571, 570, 569, 556, 571, 556, 572, 571, - 570, 571, 550, 571, 573, 550, 571, 572, 573, 572, 558, 573, - 556, 574, 575, 574, 576, 575, 574, 557, 576, 557, 577, 576, - 575, 576, 558, 576, 578, 558, 576, 577, 578, 577, 551, 578, - 549, 584, 585, 584, 586, 585, 584, 579, 586, 579, 587, 586, - 585, 586, 580, 586, 588, 580, 586, 587, 588, 587, 581, 588, - 579, 589, 590, 589, 591, 590, 589, 546, 591, 546, 592, 591, - 590, 591, 581, 591, 593, 581, 591, 592, 593, 592, 582, 593, - 580, 594, 595, 594, 596, 595, 594, 581, 596, 581, 597, 596, - 595, 596, 551, 596, 598, 551, 596, 597, 598, 597, 583, 598, - 581, 599, 600, 599, 601, 600, 599, 582, 601, 582, 602, 601, - 600, 601, 583, 601, 603, 583, 601, 602, 603, 602, 552, 603, - 550, 609, 610, 609, 611, 610, 609, 604, 611, 604, 612, 611, - 610, 611, 605, 611, 613, 605, 611, 612, 613, 612, 606, 613, - 604, 614, 615, 614, 616, 615, 614, 551, 616, 551, 617, 616, - 615, 616, 606, 616, 618, 606, 616, 617, 618, 617, 607, 618, - 605, 619, 620, 619, 621, 620, 619, 606, 621, 606, 622, 621, - 620, 621, 547, 621, 623, 547, 621, 622, 623, 622, 608, 623, - 606, 624, 625, 624, 626, 625, 624, 607, 626, 607, 627, 626, - 625, 626, 608, 626, 628, 608, 626, 627, 628, 627, 553, 628, - 551, 634, 635, 634, 636, 635, 634, 629, 636, 629, 637, 636, - 635, 636, 630, 636, 638, 630, 636, 637, 638, 637, 631, 638, - 629, 639, 640, 639, 641, 640, 639, 552, 641, 552, 642, 641, - 640, 641, 631, 641, 643, 631, 641, 642, 643, 642, 632, 643, - 630, 644, 645, 644, 646, 645, 644, 631, 646, 631, 647, 646, - 645, 646, 553, 646, 648, 553, 646, 647, 648, 647, 633, 648, - 631, 649, 650, 649, 651, 650, 649, 632, 651, 632, 652, 651, - 650, 651, 633, 651, 653, 633, 651, 652, 653, 652, 548, 653, - 654, 668, 669, 668, 670, 669, 668, 663, 670, 663, 671, 670, - 669, 670, 664, 670, 672, 664, 670, 671, 672, 671, 665, 672, - 663, 673, 674, 673, 675, 674, 673, 658, 675, 658, 676, 675, - 674, 675, 665, 675, 677, 665, 675, 676, 677, 676, 666, 677, - 664, 678, 679, 678, 680, 679, 678, 665, 680, 665, 681, 680, - 679, 680, 659, 680, 682, 659, 680, 681, 682, 681, 667, 682, - 665, 683, 684, 683, 685, 684, 683, 666, 685, 666, 686, 685, - 684, 685, 667, 685, 687, 667, 685, 686, 687, 686, 660, 687, - 658, 693, 694, 693, 695, 694, 693, 688, 695, 688, 696, 695, - 694, 695, 689, 695, 697, 689, 695, 696, 697, 696, 690, 697, - 688, 698, 699, 698, 700, 699, 698, 655, 700, 655, 701, 700, - 699, 700, 690, 700, 702, 690, 700, 701, 702, 701, 691, 702, - 689, 703, 704, 703, 705, 704, 703, 690, 705, 690, 706, 705, - 704, 705, 660, 705, 707, 660, 705, 706, 707, 706, 692, 707, - 690, 708, 709, 708, 710, 709, 708, 691, 710, 691, 711, 710, - 709, 710, 692, 710, 712, 692, 710, 711, 712, 711, 661, 712, - 659, 718, 719, 718, 720, 719, 718, 713, 720, 713, 721, 720, - 719, 720, 714, 720, 722, 714, 720, 721, 722, 721, 715, 722, - 713, 723, 724, 723, 725, 724, 723, 660, 725, 660, 726, 725, - 724, 725, 715, 725, 727, 715, 725, 726, 727, 726, 716, 727, - 714, 728, 729, 728, 730, 729, 728, 715, 730, 715, 731, 730, - 729, 730, 656, 730, 732, 656, 730, 731, 732, 731, 717, 732, - 715, 733, 734, 733, 735, 734, 733, 716, 735, 716, 736, 735, - 734, 735, 717, 735, 737, 717, 735, 736, 737, 736, 662, 737, - 660, 743, 744, 743, 745, 744, 743, 738, 745, 738, 746, 745, - 744, 745, 739, 745, 747, 739, 745, 746, 747, 746, 740, 747, - 738, 748, 749, 748, 750, 749, 748, 661, 750, 661, 751, 750, - 749, 750, 740, 750, 752, 740, 750, 751, 752, 751, 741, 752, - 739, 753, 754, 753, 755, 754, 753, 740, 755, 740, 756, 755, - 754, 755, 662, 755, 757, 662, 755, 756, 757, 756, 742, 757, - 740, 758, 759, 758, 760, 759, 758, 741, 760, 741, 761, 760, - 759, 760, 742, 760, 762, 742, 760, 761, 762, 761, 657, 762, - 763, 777, 778, 777, 779, 778, 777, 772, 779, 772, 780, 779, - 778, 779, 773, 779, 781, 773, 779, 780, 781, 780, 774, 781, - 772, 782, 783, 782, 784, 783, 782, 767, 784, 767, 785, 784, - 783, 784, 774, 784, 786, 774, 784, 785, 786, 785, 775, 786, - 773, 787, 788, 787, 789, 788, 787, 774, 789, 774, 790, 789, - 788, 789, 768, 789, 791, 768, 789, 790, 791, 790, 776, 791, - 774, 792, 793, 792, 794, 793, 792, 775, 794, 775, 795, 794, - 793, 794, 776, 794, 796, 776, 794, 795, 796, 795, 769, 796, - 767, 802, 803, 802, 804, 803, 802, 797, 804, 797, 805, 804, - 803, 804, 798, 804, 806, 798, 804, 805, 806, 805, 799, 806, - 797, 807, 808, 807, 809, 808, 807, 764, 809, 764, 810, 809, - 808, 809, 799, 809, 811, 799, 809, 810, 811, 810, 800, 811, - 798, 812, 813, 812, 814, 813, 812, 799, 814, 799, 815, 814, - 813, 814, 769, 814, 816, 769, 814, 815, 816, 815, 801, 816, - 799, 817, 818, 817, 819, 818, 817, 800, 819, 800, 820, 819, - 818, 819, 801, 819, 821, 801, 819, 820, 821, 820, 770, 821, - 768, 827, 828, 827, 829, 828, 827, 822, 829, 822, 830, 829, - 828, 829, 823, 829, 831, 823, 829, 830, 831, 830, 824, 831, - 822, 832, 833, 832, 834, 833, 832, 769, 834, 769, 835, 834, - 833, 834, 824, 834, 836, 824, 834, 835, 836, 835, 825, 836, - 823, 837, 838, 837, 839, 838, 837, 824, 839, 824, 840, 839, - 838, 839, 765, 839, 841, 765, 839, 840, 841, 840, 826, 841, - 824, 842, 843, 842, 844, 843, 842, 825, 844, 825, 845, 844, - 843, 844, 826, 844, 846, 826, 844, 845, 846, 845, 771, 846, - 769, 852, 853, 852, 854, 853, 852, 847, 854, 847, 855, 854, - 853, 854, 848, 854, 856, 848, 854, 855, 856, 855, 849, 856, - 847, 857, 858, 857, 859, 858, 857, 770, 859, 770, 860, 859, - 858, 859, 849, 859, 861, 849, 859, 860, 861, 860, 850, 861, - 848, 862, 863, 862, 864, 863, 862, 849, 864, 849, 865, 864, - 863, 864, 771, 864, 866, 771, 864, 865, 866, 865, 851, 866, - 849, 867, 868, 867, 869, 868, 867, 850, 869, 850, 870, 869, - 868, 869, 851, 869, 871, 851, 869, 870, 871, 870, 766, 871, - 872, 886, 887, 886, 888, 887, 886, 881, 888, 881, 889, 888, - 887, 888, 882, 888, 890, 882, 888, 889, 890, 889, 883, 890, - 881, 891, 892, 891, 893, 892, 891, 876, 893, 876, 894, 893, - 892, 893, 883, 893, 895, 883, 893, 894, 895, 894, 884, 895, - 882, 896, 897, 896, 898, 897, 896, 883, 898, 883, 899, 898, - 897, 898, 877, 898, 900, 877, 898, 899, 900, 899, 885, 900, - 883, 901, 902, 901, 903, 902, 901, 884, 903, 884, 904, 903, - 902, 903, 885, 903, 905, 885, 903, 904, 905, 904, 878, 905, - 876, 911, 912, 911, 913, 912, 911, 906, 913, 906, 914, 913, - 912, 913, 907, 913, 915, 907, 913, 914, 915, 914, 908, 915, - 906, 916, 917, 916, 918, 917, 916, 873, 918, 873, 919, 918, - 917, 918, 908, 918, 920, 908, 918, 919, 920, 919, 909, 920, - 907, 921, 922, 921, 923, 922, 921, 908, 923, 908, 924, 923, - 922, 923, 878, 923, 925, 878, 923, 924, 925, 924, 910, 925, - 908, 926, 927, 926, 928, 927, 926, 909, 928, 909, 929, 928, - 927, 928, 910, 928, 930, 910, 928, 929, 930, 929, 879, 930, - 877, 936, 937, 936, 938, 937, 936, 931, 938, 931, 939, 938, - 937, 938, 932, 938, 940, 932, 938, 939, 940, 939, 933, 940, - 931, 941, 942, 941, 943, 942, 941, 878, 943, 878, 944, 943, - 942, 943, 933, 943, 945, 933, 943, 944, 945, 944, 934, 945, - 932, 946, 947, 946, 948, 947, 946, 933, 948, 933, 949, 948, - 947, 948, 874, 948, 950, 874, 948, 949, 950, 949, 935, 950, - 933, 951, 952, 951, 953, 952, 951, 934, 953, 934, 954, 953, - 952, 953, 935, 953, 955, 935, 953, 954, 955, 954, 880, 955, - 878, 961, 962, 961, 963, 962, 961, 956, 963, 956, 964, 963, - 962, 963, 957, 963, 965, 957, 963, 964, 965, 964, 958, 965, - 956, 966, 967, 966, 968, 967, 966, 879, 968, 879, 969, 968, - 967, 968, 958, 968, 970, 958, 968, 969, 970, 969, 959, 970, - 957, 971, 972, 971, 973, 972, 971, 958, 973, 958, 974, 973, - 972, 973, 880, 973, 975, 880, 973, 974, 975, 974, 960, 975, - 958, 976, 977, 976, 978, 977, 976, 959, 978, 959, 979, 978, - 977, 978, 960, 978, 980, 960, 978, 979, 980, 979, 875, 980, - 981, 995, 996, 995, 997, 996, 995, 990, 997, 990, 998, 997, - 996, 997, 991, 997, 999, 991, 997, 998, 999, 998, 992, 999, - 990, 1000, 1001, 1000, 1002, 1001, 1000, 985, 1002, 985, 1003, 1002, - 1001, 1002, 992, 1002, 1004, 992, 1002, 1003, 1004, 1003, 993, 1004, - 991, 1005, 1006, 1005, 1007, 1006, 1005, 992, 1007, 992, 1008, 1007, - 1006, 1007, 986, 1007, 1009, 986, 1007, 1008, 1009, 1008, 994, 1009, - 992, 1010, 1011, 1010, 1012, 1011, 1010, 993, 1012, 993, 1013, 1012, - 1011, 1012, 994, 1012, 1014, 994, 1012, 1013, 1014, 1013, 987, 1014, - 985, 1020, 1021, 1020, 1022, 1021, 1020, 1015, 1022, 1015, 1023, 1022, - 1021, 1022, 1016, 1022, 1024, 1016, 1022, 1023, 1024, 1023, 1017, 1024, - 1015, 1025, 1026, 1025, 1027, 1026, 1025, 982, 1027, 982, 1028, 1027, - 1026, 1027, 1017, 1027, 1029, 1017, 1027, 1028, 1029, 1028, 1018, 1029, - 1016, 1030, 1031, 1030, 1032, 1031, 1030, 1017, 1032, 1017, 1033, 1032, - 1031, 1032, 987, 1032, 1034, 987, 1032, 1033, 1034, 1033, 1019, 1034, - 1017, 1035, 1036, 1035, 1037, 1036, 1035, 1018, 1037, 1018, 1038, 1037, - 1036, 1037, 1019, 1037, 1039, 1019, 1037, 1038, 1039, 1038, 988, 1039, - 986, 1045, 1046, 1045, 1047, 1046, 1045, 1040, 1047, 1040, 1048, 1047, - 1046, 1047, 1041, 1047, 1049, 1041, 1047, 1048, 1049, 1048, 1042, 1049, - 1040, 1050, 1051, 1050, 1052, 1051, 1050, 987, 1052, 987, 1053, 1052, - 1051, 1052, 1042, 1052, 1054, 1042, 1052, 1053, 1054, 1053, 1043, 1054, - 1041, 1055, 1056, 1055, 1057, 1056, 1055, 1042, 1057, 1042, 1058, 1057, - 1056, 1057, 983, 1057, 1059, 983, 1057, 1058, 1059, 1058, 1044, 1059, - 1042, 1060, 1061, 1060, 1062, 1061, 1060, 1043, 1062, 1043, 1063, 1062, - 1061, 1062, 1044, 1062, 1064, 1044, 1062, 1063, 1064, 1063, 989, 1064, - 987, 1070, 1071, 1070, 1072, 1071, 1070, 1065, 1072, 1065, 1073, 1072, - 1071, 1072, 1066, 1072, 1074, 1066, 1072, 1073, 1074, 1073, 1067, 1074, - 1065, 1075, 1076, 1075, 1077, 1076, 1075, 988, 1077, 988, 1078, 1077, - 1076, 1077, 1067, 1077, 1079, 1067, 1077, 1078, 1079, 1078, 1068, 1079, - 1066, 1080, 1081, 1080, 1082, 1081, 1080, 1067, 1082, 1067, 1083, 1082, - 1081, 1082, 989, 1082, 1084, 989, 1082, 1083, 1084, 1083, 1069, 1084, - 1067, 1085, 1086, 1085, 1087, 1086, 1085, 1068, 1087, 1068, 1088, 1087, - 1086, 1087, 1069, 1087, 1089, 1069, 1087, 1088, 1089, 1088, 984, 1089, - 1090, 1104, 1105, 1104, 1106, 1105, 1104, 1099, 1106, 1099, 1107, 1106, - 1105, 1106, 1100, 1106, 1108, 1100, 1106, 1107, 1108, 1107, 1101, 1108, - 1099, 1109, 1110, 1109, 1111, 1110, 1109, 1094, 1111, 1094, 1112, 1111, - 1110, 1111, 1101, 1111, 1113, 1101, 1111, 1112, 1113, 1112, 1102, 1113, - 1100, 1114, 1115, 1114, 1116, 1115, 1114, 1101, 1116, 1101, 1117, 1116, - 1115, 1116, 1095, 1116, 1118, 1095, 1116, 1117, 1118, 1117, 1103, 1118, - 1101, 1119, 1120, 1119, 1121, 1120, 1119, 1102, 1121, 1102, 1122, 1121, - 1120, 1121, 1103, 1121, 1123, 1103, 1121, 1122, 1123, 1122, 1096, 1123, - 1094, 1129, 1130, 1129, 1131, 1130, 1129, 1124, 1131, 1124, 1132, 1131, - 1130, 1131, 1125, 1131, 1133, 1125, 1131, 1132, 1133, 1132, 1126, 1133, - 1124, 1134, 1135, 1134, 1136, 1135, 1134, 1091, 1136, 1091, 1137, 1136, - 1135, 1136, 1126, 1136, 1138, 1126, 1136, 1137, 1138, 1137, 1127, 1138, - 1125, 1139, 1140, 1139, 1141, 1140, 1139, 1126, 1141, 1126, 1142, 1141, - 1140, 1141, 1096, 1141, 1143, 1096, 1141, 1142, 1143, 1142, 1128, 1143, - 1126, 1144, 1145, 1144, 1146, 1145, 1144, 1127, 1146, 1127, 1147, 1146, - 1145, 1146, 1128, 1146, 1148, 1128, 1146, 1147, 1148, 1147, 1097, 1148, - 1095, 1154, 1155, 1154, 1156, 1155, 1154, 1149, 1156, 1149, 1157, 1156, - 1155, 1156, 1150, 1156, 1158, 1150, 1156, 1157, 1158, 1157, 1151, 1158, - 1149, 1159, 1160, 1159, 1161, 1160, 1159, 1096, 1161, 1096, 1162, 1161, - 1160, 1161, 1151, 1161, 1163, 1151, 1161, 1162, 1163, 1162, 1152, 1163, - 1150, 1164, 1165, 1164, 1166, 1165, 1164, 1151, 1166, 1151, 1167, 1166, - 1165, 1166, 1092, 1166, 1168, 1092, 1166, 1167, 1168, 1167, 1153, 1168, - 1151, 1169, 1170, 1169, 1171, 1170, 1169, 1152, 1171, 1152, 1172, 1171, - 1170, 1171, 1153, 1171, 1173, 1153, 1171, 1172, 1173, 1172, 1098, 1173, - 1096, 1179, 1180, 1179, 1181, 1180, 1179, 1174, 1181, 1174, 1182, 1181, - 1180, 1181, 1175, 1181, 1183, 1175, 1181, 1182, 1183, 1182, 1176, 1183, - 1174, 1184, 1185, 1184, 1186, 1185, 1184, 1097, 1186, 1097, 1187, 1186, - 1185, 1186, 1176, 1186, 1188, 1176, 1186, 1187, 1188, 1187, 1177, 1188, - 1175, 1189, 1190, 1189, 1191, 1190, 1189, 1176, 1191, 1176, 1192, 1191, - 1190, 1191, 1098, 1191, 1193, 1098, 1191, 1192, 1193, 1192, 1178, 1193, - 1176, 1194, 1195, 1194, 1196, 1195, 1194, 1177, 1196, 1177, 1197, 1196, - 1195, 1196, 1178, 1196, 1198, 1178, 1196, 1197, 1198, 1197, 1093, 1198, - 1199, 1213, 1214, 1213, 1215, 1214, 1213, 1208, 1215, 1208, 1216, 1215, - 1214, 1215, 1209, 1215, 1217, 1209, 1215, 1216, 1217, 1216, 1210, 1217, - 1208, 1218, 1219, 1218, 1220, 1219, 1218, 1203, 1220, 1203, 1221, 1220, - 1219, 1220, 1210, 1220, 1222, 1210, 1220, 1221, 1222, 1221, 1211, 1222, - 1209, 1223, 1224, 1223, 1225, 1224, 1223, 1210, 1225, 1210, 1226, 1225, - 1224, 1225, 1204, 1225, 1227, 1204, 1225, 1226, 1227, 1226, 1212, 1227, - 1210, 1228, 1229, 1228, 1230, 1229, 1228, 1211, 1230, 1211, 1231, 1230, - 1229, 1230, 1212, 1230, 1232, 1212, 1230, 1231, 1232, 1231, 1205, 1232, - 1203, 1238, 1239, 1238, 1240, 1239, 1238, 1233, 1240, 1233, 1241, 1240, - 1239, 1240, 1234, 1240, 1242, 1234, 1240, 1241, 1242, 1241, 1235, 1242, - 1233, 1243, 1244, 1243, 1245, 1244, 1243, 1200, 1245, 1200, 1246, 1245, - 1244, 1245, 1235, 1245, 1247, 1235, 1245, 1246, 1247, 1246, 1236, 1247, - 1234, 1248, 1249, 1248, 1250, 1249, 1248, 1235, 1250, 1235, 1251, 1250, - 1249, 1250, 1205, 1250, 1252, 1205, 1250, 1251, 1252, 1251, 1237, 1252, - 1235, 1253, 1254, 1253, 1255, 1254, 1253, 1236, 1255, 1236, 1256, 1255, - 1254, 1255, 1237, 1255, 1257, 1237, 1255, 1256, 1257, 1256, 1206, 1257, - 1204, 1263, 1264, 1263, 1265, 1264, 1263, 1258, 1265, 1258, 1266, 1265, - 1264, 1265, 1259, 1265, 1267, 1259, 1265, 1266, 1267, 1266, 1260, 1267, - 1258, 1268, 1269, 1268, 1270, 1269, 1268, 1205, 1270, 1205, 1271, 1270, - 1269, 1270, 1260, 1270, 1272, 1260, 1270, 1271, 1272, 1271, 1261, 1272, - 1259, 1273, 1274, 1273, 1275, 1274, 1273, 1260, 1275, 1260, 1276, 1275, - 1274, 1275, 1201, 1275, 1277, 1201, 1275, 1276, 1277, 1276, 1262, 1277, - 1260, 1278, 1279, 1278, 1280, 1279, 1278, 1261, 1280, 1261, 1281, 1280, - 1279, 1280, 1262, 1280, 1282, 1262, 1280, 1281, 1282, 1281, 1207, 1282, - 1205, 1288, 1289, 1288, 1290, 1289, 1288, 1283, 1290, 1283, 1291, 1290, - 1289, 1290, 1284, 1290, 1292, 1284, 1290, 1291, 1292, 1291, 1285, 1292, - 1283, 1293, 1294, 1293, 1295, 1294, 1293, 1206, 1295, 1206, 1296, 1295, - 1294, 1295, 1285, 1295, 1297, 1285, 1295, 1296, 1297, 1296, 1286, 1297, - 1284, 1298, 1299, 1298, 1300, 1299, 1298, 1285, 1300, 1285, 1301, 1300, - 1299, 1300, 1207, 1300, 1302, 1207, 1300, 1301, 1302, 1301, 1287, 1302, - 1285, 1303, 1304, 1303, 1305, 1304, 1303, 1286, 1305, 1286, 1306, 1305, - 1304, 1305, 1287, 1305, 1307, 1287, 1305, 1306, 1307, 1306, 1202, 1307, - 1308, 1322, 1323, 1322, 1324, 1323, 1322, 1317, 1324, 1317, 1325, 1324, - 1323, 1324, 1318, 1324, 1326, 1318, 1324, 1325, 1326, 1325, 1319, 1326, - 1317, 1327, 1328, 1327, 1329, 1328, 1327, 1312, 1329, 1312, 1330, 1329, - 1328, 1329, 1319, 1329, 1331, 1319, 1329, 1330, 1331, 1330, 1320, 1331, - 1318, 1332, 1333, 1332, 1334, 1333, 1332, 1319, 1334, 1319, 1335, 1334, - 1333, 1334, 1313, 1334, 1336, 1313, 1334, 1335, 1336, 1335, 1321, 1336, - 1319, 1337, 1338, 1337, 1339, 1338, 1337, 1320, 1339, 1320, 1340, 1339, - 1338, 1339, 1321, 1339, 1341, 1321, 1339, 1340, 1341, 1340, 1314, 1341, - 1312, 1347, 1348, 1347, 1349, 1348, 1347, 1342, 1349, 1342, 1350, 1349, - 1348, 1349, 1343, 1349, 1351, 1343, 1349, 1350, 1351, 1350, 1344, 1351, - 1342, 1352, 1353, 1352, 1354, 1353, 1352, 1309, 1354, 1309, 1355, 1354, - 1353, 1354, 1344, 1354, 1356, 1344, 1354, 1355, 1356, 1355, 1345, 1356, - 1343, 1357, 1358, 1357, 1359, 1358, 1357, 1344, 1359, 1344, 1360, 1359, - 1358, 1359, 1314, 1359, 1361, 1314, 1359, 1360, 1361, 1360, 1346, 1361, - 1344, 1362, 1363, 1362, 1364, 1363, 1362, 1345, 1364, 1345, 1365, 1364, - 1363, 1364, 1346, 1364, 1366, 1346, 1364, 1365, 1366, 1365, 1315, 1366, - 1313, 1372, 1373, 1372, 1374, 1373, 1372, 1367, 1374, 1367, 1375, 1374, - 1373, 1374, 1368, 1374, 1376, 1368, 1374, 1375, 1376, 1375, 1369, 1376, - 1367, 1377, 1378, 1377, 1379, 1378, 1377, 1314, 1379, 1314, 1380, 1379, - 1378, 1379, 1369, 1379, 1381, 1369, 1379, 1380, 1381, 1380, 1370, 1381, - 1368, 1382, 1383, 1382, 1384, 1383, 1382, 1369, 1384, 1369, 1385, 1384, - 1383, 1384, 1310, 1384, 1386, 1310, 1384, 1385, 1386, 1385, 1371, 1386, - 1369, 1387, 1388, 1387, 1389, 1388, 1387, 1370, 1389, 1370, 1390, 1389, - 1388, 1389, 1371, 1389, 1391, 1371, 1389, 1390, 1391, 1390, 1316, 1391, - 1314, 1397, 1398, 1397, 1399, 1398, 1397, 1392, 1399, 1392, 1400, 1399, - 1398, 1399, 1393, 1399, 1401, 1393, 1399, 1400, 1401, 1400, 1394, 1401, - 1392, 1402, 1403, 1402, 1404, 1403, 1402, 1315, 1404, 1315, 1405, 1404, - 1403, 1404, 1394, 1404, 1406, 1394, 1404, 1405, 1406, 1405, 1395, 1406, - 1393, 1407, 1408, 1407, 1409, 1408, 1407, 1394, 1409, 1394, 1410, 1409, - 1408, 1409, 1316, 1409, 1411, 1316, 1409, 1410, 1411, 1410, 1396, 1411, - 1394, 1412, 1413, 1412, 1414, 1413, 1412, 1395, 1414, 1395, 1415, 1414, - 1413, 1414, 1396, 1414, 1416, 1396, 1414, 1415, 1416, 1415, 1311, 1416, - 1417, 1431, 1432, 1431, 1433, 1432, 1431, 1426, 1433, 1426, 1434, 1433, - 1432, 1433, 1427, 1433, 1435, 1427, 1433, 1434, 1435, 1434, 1428, 1435, - 1426, 1436, 1437, 1436, 1438, 1437, 1436, 1421, 1438, 1421, 1439, 1438, - 1437, 1438, 1428, 1438, 1440, 1428, 1438, 1439, 1440, 1439, 1429, 1440, - 1427, 1441, 1442, 1441, 1443, 1442, 1441, 1428, 1443, 1428, 1444, 1443, - 1442, 1443, 1422, 1443, 1445, 1422, 1443, 1444, 1445, 1444, 1430, 1445, - 1428, 1446, 1447, 1446, 1448, 1447, 1446, 1429, 1448, 1429, 1449, 1448, - 1447, 1448, 1430, 1448, 1450, 1430, 1448, 1449, 1450, 1449, 1423, 1450, - 1421, 1456, 1457, 1456, 1458, 1457, 1456, 1451, 1458, 1451, 1459, 1458, - 1457, 1458, 1452, 1458, 1460, 1452, 1458, 1459, 1460, 1459, 1453, 1460, - 1451, 1461, 1462, 1461, 1463, 1462, 1461, 1418, 1463, 1418, 1464, 1463, - 1462, 1463, 1453, 1463, 1465, 1453, 1463, 1464, 1465, 1464, 1454, 1465, - 1452, 1466, 1467, 1466, 1468, 1467, 1466, 1453, 1468, 1453, 1469, 1468, - 1467, 1468, 1423, 1468, 1470, 1423, 1468, 1469, 1470, 1469, 1455, 1470, - 1453, 1471, 1472, 1471, 1473, 1472, 1471, 1454, 1473, 1454, 1474, 1473, - 1472, 1473, 1455, 1473, 1475, 1455, 1473, 1474, 1475, 1474, 1424, 1475, - 1422, 1481, 1482, 1481, 1483, 1482, 1481, 1476, 1483, 1476, 1484, 1483, - 1482, 1483, 1477, 1483, 1485, 1477, 1483, 1484, 1485, 1484, 1478, 1485, - 1476, 1486, 1487, 1486, 1488, 1487, 1486, 1423, 1488, 1423, 1489, 1488, - 1487, 1488, 1478, 1488, 1490, 1478, 1488, 1489, 1490, 1489, 1479, 1490, - 1477, 1491, 1492, 1491, 1493, 1492, 1491, 1478, 1493, 1478, 1494, 1493, - 1492, 1493, 1419, 1493, 1495, 1419, 1493, 1494, 1495, 1494, 1480, 1495, - 1478, 1496, 1497, 1496, 1498, 1497, 1496, 1479, 1498, 1479, 1499, 1498, - 1497, 1498, 1480, 1498, 1500, 1480, 1498, 1499, 1500, 1499, 1425, 1500, - 1423, 1506, 1507, 1506, 1508, 1507, 1506, 1501, 1508, 1501, 1509, 1508, - 1507, 1508, 1502, 1508, 1510, 1502, 1508, 1509, 1510, 1509, 1503, 1510, - 1501, 1511, 1512, 1511, 1513, 1512, 1511, 1424, 1513, 1424, 1514, 1513, - 1512, 1513, 1503, 1513, 1515, 1503, 1513, 1514, 1515, 1514, 1504, 1515, - 1502, 1516, 1517, 1516, 1518, 1517, 1516, 1503, 1518, 1503, 1519, 1518, - 1517, 1518, 1425, 1518, 1520, 1425, 1518, 1519, 1520, 1519, 1505, 1520, - 1503, 1521, 1522, 1521, 1523, 1522, 1521, 1504, 1523, 1504, 1524, 1523, - 1522, 1523, 1505, 1523, 1525, 1505, 1523, 1524, 1525, 1524, 1420, 1525, - 1526, 1540, 1541, 1540, 1542, 1541, 1540, 1535, 1542, 1535, 1543, 1542, - 1541, 1542, 1536, 1542, 1544, 1536, 1542, 1543, 1544, 1543, 1537, 1544, - 1535, 1545, 1546, 1545, 1547, 1546, 1545, 1530, 1547, 1530, 1548, 1547, - 1546, 1547, 1537, 1547, 1549, 1537, 1547, 1548, 1549, 1548, 1538, 1549, - 1536, 1550, 1551, 1550, 1552, 1551, 1550, 1537, 1552, 1537, 1553, 1552, - 1551, 1552, 1531, 1552, 1554, 1531, 1552, 1553, 1554, 1553, 1539, 1554, - 1537, 1555, 1556, 1555, 1557, 1556, 1555, 1538, 1557, 1538, 1558, 1557, - 1556, 1557, 1539, 1557, 1559, 1539, 1557, 1558, 1559, 1558, 1532, 1559, - 1530, 1565, 1566, 1565, 1567, 1566, 1565, 1560, 1567, 1560, 1568, 1567, - 1566, 1567, 1561, 1567, 1569, 1561, 1567, 1568, 1569, 1568, 1562, 1569, - 1560, 1570, 1571, 1570, 1572, 1571, 1570, 1527, 1572, 1527, 1573, 1572, - 1571, 1572, 1562, 1572, 1574, 1562, 1572, 1573, 1574, 1573, 1563, 1574, - 1561, 1575, 1576, 1575, 1577, 1576, 1575, 1562, 1577, 1562, 1578, 1577, - 1576, 1577, 1532, 1577, 1579, 1532, 1577, 1578, 1579, 1578, 1564, 1579, - 1562, 1580, 1581, 1580, 1582, 1581, 1580, 1563, 1582, 1563, 1583, 1582, - 1581, 1582, 1564, 1582, 1584, 1564, 1582, 1583, 1584, 1583, 1533, 1584, - 1531, 1590, 1591, 1590, 1592, 1591, 1590, 1585, 1592, 1585, 1593, 1592, - 1591, 1592, 1586, 1592, 1594, 1586, 1592, 1593, 1594, 1593, 1587, 1594, - 1585, 1595, 1596, 1595, 1597, 1596, 1595, 1532, 1597, 1532, 1598, 1597, - 1596, 1597, 1587, 1597, 1599, 1587, 1597, 1598, 1599, 1598, 1588, 1599, - 1586, 1600, 1601, 1600, 1602, 1601, 1600, 1587, 1602, 1587, 1603, 1602, - 1601, 1602, 1528, 1602, 1604, 1528, 1602, 1603, 1604, 1603, 1589, 1604, - 1587, 1605, 1606, 1605, 1607, 1606, 1605, 1588, 1607, 1588, 1608, 1607, - 1606, 1607, 1589, 1607, 1609, 1589, 1607, 1608, 1609, 1608, 1534, 1609, - 1532, 1615, 1616, 1615, 1617, 1616, 1615, 1610, 1617, 1610, 1618, 1617, - 1616, 1617, 1611, 1617, 1619, 1611, 1617, 1618, 1619, 1618, 1612, 1619, - 1610, 1620, 1621, 1620, 1622, 1621, 1620, 1533, 1622, 1533, 1623, 1622, - 1621, 1622, 1612, 1622, 1624, 1612, 1622, 1623, 1624, 1623, 1613, 1624, - 1611, 1625, 1626, 1625, 1627, 1626, 1625, 1612, 1627, 1612, 1628, 1627, - 1626, 1627, 1534, 1627, 1629, 1534, 1627, 1628, 1629, 1628, 1614, 1629, - 1612, 1630, 1631, 1630, 1632, 1631, 1630, 1613, 1632, 1613, 1633, 1632, - 1631, 1632, 1614, 1632, 1634, 1614, 1632, 1633, 1634, 1633, 1529, 1634, - 1635, 1649, 1650, 1649, 1651, 1650, 1649, 1644, 1651, 1644, 1652, 1651, - 1650, 1651, 1645, 1651, 1653, 1645, 1651, 1652, 1653, 1652, 1646, 1653, - 1644, 1654, 1655, 1654, 1656, 1655, 1654, 1639, 1656, 1639, 1657, 1656, - 1655, 1656, 1646, 1656, 1658, 1646, 1656, 1657, 1658, 1657, 1647, 1658, - 1645, 1659, 1660, 1659, 1661, 1660, 1659, 1646, 1661, 1646, 1662, 1661, - 1660, 1661, 1640, 1661, 1663, 1640, 1661, 1662, 1663, 1662, 1648, 1663, - 1646, 1664, 1665, 1664, 1666, 1665, 1664, 1647, 1666, 1647, 1667, 1666, - 1665, 1666, 1648, 1666, 1668, 1648, 1666, 1667, 1668, 1667, 1641, 1668, - 1639, 1674, 1675, 1674, 1676, 1675, 1674, 1669, 1676, 1669, 1677, 1676, - 1675, 1676, 1670, 1676, 1678, 1670, 1676, 1677, 1678, 1677, 1671, 1678, - 1669, 1679, 1680, 1679, 1681, 1680, 1679, 1636, 1681, 1636, 1682, 1681, - 1680, 1681, 1671, 1681, 1683, 1671, 1681, 1682, 1683, 1682, 1672, 1683, - 1670, 1684, 1685, 1684, 1686, 1685, 1684, 1671, 1686, 1671, 1687, 1686, - 1685, 1686, 1641, 1686, 1688, 1641, 1686, 1687, 1688, 1687, 1673, 1688, - 1671, 1689, 1690, 1689, 1691, 1690, 1689, 1672, 1691, 1672, 1692, 1691, - 1690, 1691, 1673, 1691, 1693, 1673, 1691, 1692, 1693, 1692, 1642, 1693, - 1640, 1699, 1700, 1699, 1701, 1700, 1699, 1694, 1701, 1694, 1702, 1701, - 1700, 1701, 1695, 1701, 1703, 1695, 1701, 1702, 1703, 1702, 1696, 1703, - 1694, 1704, 1705, 1704, 1706, 1705, 1704, 1641, 1706, 1641, 1707, 1706, - 1705, 1706, 1696, 1706, 1708, 1696, 1706, 1707, 1708, 1707, 1697, 1708, - 1695, 1709, 1710, 1709, 1711, 1710, 1709, 1696, 1711, 1696, 1712, 1711, - 1710, 1711, 1637, 1711, 1713, 1637, 1711, 1712, 1713, 1712, 1698, 1713, - 1696, 1714, 1715, 1714, 1716, 1715, 1714, 1697, 1716, 1697, 1717, 1716, - 1715, 1716, 1698, 1716, 1718, 1698, 1716, 1717, 1718, 1717, 1643, 1718, - 1641, 1724, 1725, 1724, 1726, 1725, 1724, 1719, 1726, 1719, 1727, 1726, - 1725, 1726, 1720, 1726, 1728, 1720, 1726, 1727, 1728, 1727, 1721, 1728, - 1719, 1729, 1730, 1729, 1731, 1730, 1729, 1642, 1731, 1642, 1732, 1731, - 1730, 1731, 1721, 1731, 1733, 1721, 1731, 1732, 1733, 1732, 1722, 1733, - 1720, 1734, 1735, 1734, 1736, 1735, 1734, 1721, 1736, 1721, 1737, 1736, - 1735, 1736, 1643, 1736, 1738, 1643, 1736, 1737, 1738, 1737, 1723, 1738, - 1721, 1739, 1740, 1739, 1741, 1740, 1739, 1722, 1741, 1722, 1742, 1741, - 1740, 1741, 1723, 1741, 1743, 1723, 1741, 1742, 1743, 1742, 1638, 1743, - 1744, 1758, 1759, 1758, 1760, 1759, 1758, 1753, 1760, 1753, 1761, 1760, - 1759, 1760, 1754, 1760, 1762, 1754, 1760, 1761, 1762, 1761, 1755, 1762, - 1753, 1763, 1764, 1763, 1765, 1764, 1763, 1748, 1765, 1748, 1766, 1765, - 1764, 1765, 1755, 1765, 1767, 1755, 1765, 1766, 1767, 1766, 1756, 1767, - 1754, 1768, 1769, 1768, 1770, 1769, 1768, 1755, 1770, 1755, 1771, 1770, - 1769, 1770, 1749, 1770, 1772, 1749, 1770, 1771, 1772, 1771, 1757, 1772, - 1755, 1773, 1774, 1773, 1775, 1774, 1773, 1756, 1775, 1756, 1776, 1775, - 1774, 1775, 1757, 1775, 1777, 1757, 1775, 1776, 1777, 1776, 1750, 1777, - 1748, 1783, 1784, 1783, 1785, 1784, 1783, 1778, 1785, 1778, 1786, 1785, - 1784, 1785, 1779, 1785, 1787, 1779, 1785, 1786, 1787, 1786, 1780, 1787, - 1778, 1788, 1789, 1788, 1790, 1789, 1788, 1745, 1790, 1745, 1791, 1790, - 1789, 1790, 1780, 1790, 1792, 1780, 1790, 1791, 1792, 1791, 1781, 1792, - 1779, 1793, 1794, 1793, 1795, 1794, 1793, 1780, 1795, 1780, 1796, 1795, - 1794, 1795, 1750, 1795, 1797, 1750, 1795, 1796, 1797, 1796, 1782, 1797, - 1780, 1798, 1799, 1798, 1800, 1799, 1798, 1781, 1800, 1781, 1801, 1800, - 1799, 1800, 1782, 1800, 1802, 1782, 1800, 1801, 1802, 1801, 1751, 1802, - 1749, 1808, 1809, 1808, 1810, 1809, 1808, 1803, 1810, 1803, 1811, 1810, - 1809, 1810, 1804, 1810, 1812, 1804, 1810, 1811, 1812, 1811, 1805, 1812, - 1803, 1813, 1814, 1813, 1815, 1814, 1813, 1750, 1815, 1750, 1816, 1815, - 1814, 1815, 1805, 1815, 1817, 1805, 1815, 1816, 1817, 1816, 1806, 1817, - 1804, 1818, 1819, 1818, 1820, 1819, 1818, 1805, 1820, 1805, 1821, 1820, - 1819, 1820, 1746, 1820, 1822, 1746, 1820, 1821, 1822, 1821, 1807, 1822, - 1805, 1823, 1824, 1823, 1825, 1824, 1823, 1806, 1825, 1806, 1826, 1825, - 1824, 1825, 1807, 1825, 1827, 1807, 1825, 1826, 1827, 1826, 1752, 1827, - 1750, 1833, 1834, 1833, 1835, 1834, 1833, 1828, 1835, 1828, 1836, 1835, - 1834, 1835, 1829, 1835, 1837, 1829, 1835, 1836, 1837, 1836, 1830, 1837, - 1828, 1838, 1839, 1838, 1840, 1839, 1838, 1751, 1840, 1751, 1841, 1840, - 1839, 1840, 1830, 1840, 1842, 1830, 1840, 1841, 1842, 1841, 1831, 1842, - 1829, 1843, 1844, 1843, 1845, 1844, 1843, 1830, 1845, 1830, 1846, 1845, - 1844, 1845, 1752, 1845, 1847, 1752, 1845, 1846, 1847, 1846, 1832, 1847, - 1830, 1848, 1849, 1848, 1850, 1849, 1848, 1831, 1850, 1831, 1851, 1850, - 1849, 1850, 1832, 1850, 1852, 1832, 1850, 1851, 1852, 1851, 1747, 1852, - 1853, 1867, 1868, 1867, 1869, 1868, 1867, 1862, 1869, 1862, 1870, 1869, - 1868, 1869, 1863, 1869, 1871, 1863, 1869, 1870, 1871, 1870, 1864, 1871, - 1862, 1872, 1873, 1872, 1874, 1873, 1872, 1857, 1874, 1857, 1875, 1874, - 1873, 1874, 1864, 1874, 1876, 1864, 1874, 1875, 1876, 1875, 1865, 1876, - 1863, 1877, 1878, 1877, 1879, 1878, 1877, 1864, 1879, 1864, 1880, 1879, - 1878, 1879, 1858, 1879, 1881, 1858, 1879, 1880, 1881, 1880, 1866, 1881, - 1864, 1882, 1883, 1882, 1884, 1883, 1882, 1865, 1884, 1865, 1885, 1884, - 1883, 1884, 1866, 1884, 1886, 1866, 1884, 1885, 1886, 1885, 1859, 1886, - 1857, 1892, 1893, 1892, 1894, 1893, 1892, 1887, 1894, 1887, 1895, 1894, - 1893, 1894, 1888, 1894, 1896, 1888, 1894, 1895, 1896, 1895, 1889, 1896, - 1887, 1897, 1898, 1897, 1899, 1898, 1897, 1854, 1899, 1854, 1900, 1899, - 1898, 1899, 1889, 1899, 1901, 1889, 1899, 1900, 1901, 1900, 1890, 1901, - 1888, 1902, 1903, 1902, 1904, 1903, 1902, 1889, 1904, 1889, 1905, 1904, - 1903, 1904, 1859, 1904, 1906, 1859, 1904, 1905, 1906, 1905, 1891, 1906, - 1889, 1907, 1908, 1907, 1909, 1908, 1907, 1890, 1909, 1890, 1910, 1909, - 1908, 1909, 1891, 1909, 1911, 1891, 1909, 1910, 1911, 1910, 1860, 1911, - 1858, 1917, 1918, 1917, 1919, 1918, 1917, 1912, 1919, 1912, 1920, 1919, - 1918, 1919, 1913, 1919, 1921, 1913, 1919, 1920, 1921, 1920, 1914, 1921, - 1912, 1922, 1923, 1922, 1924, 1923, 1922, 1859, 1924, 1859, 1925, 1924, - 1923, 1924, 1914, 1924, 1926, 1914, 1924, 1925, 1926, 1925, 1915, 1926, - 1913, 1927, 1928, 1927, 1929, 1928, 1927, 1914, 1929, 1914, 1930, 1929, - 1928, 1929, 1855, 1929, 1931, 1855, 1929, 1930, 1931, 1930, 1916, 1931, - 1914, 1932, 1933, 1932, 1934, 1933, 1932, 1915, 1934, 1915, 1935, 1934, - 1933, 1934, 1916, 1934, 1936, 1916, 1934, 1935, 1936, 1935, 1861, 1936, - 1859, 1942, 1943, 1942, 1944, 1943, 1942, 1937, 1944, 1937, 1945, 1944, - 1943, 1944, 1938, 1944, 1946, 1938, 1944, 1945, 1946, 1945, 1939, 1946, - 1937, 1947, 1948, 1947, 1949, 1948, 1947, 1860, 1949, 1860, 1950, 1949, - 1948, 1949, 1939, 1949, 1951, 1939, 1949, 1950, 1951, 1950, 1940, 1951, - 1938, 1952, 1953, 1952, 1954, 1953, 1952, 1939, 1954, 1939, 1955, 1954, - 1953, 1954, 1861, 1954, 1956, 1861, 1954, 1955, 1956, 1955, 1941, 1956, - 1939, 1957, 1958, 1957, 1959, 1958, 1957, 1940, 1959, 1940, 1960, 1959, - 1958, 1959, 1941, 1959, 1961, 1941, 1959, 1960, 1961, 1960, 1856, 1961, - 1962, 1976, 1977, 1976, 1978, 1977, 1976, 1971, 1978, 1971, 1979, 1978, - 1977, 1978, 1972, 1978, 1980, 1972, 1978, 1979, 1980, 1979, 1973, 1980, - 1971, 1981, 1982, 1981, 1983, 1982, 1981, 1966, 1983, 1966, 1984, 1983, - 1982, 1983, 1973, 1983, 1985, 1973, 1983, 1984, 1985, 1984, 1974, 1985, - 1972, 1986, 1987, 1986, 1988, 1987, 1986, 1973, 1988, 1973, 1989, 1988, - 1987, 1988, 1967, 1988, 1990, 1967, 1988, 1989, 1990, 1989, 1975, 1990, - 1973, 1991, 1992, 1991, 1993, 1992, 1991, 1974, 1993, 1974, 1994, 1993, - 1992, 1993, 1975, 1993, 1995, 1975, 1993, 1994, 1995, 1994, 1968, 1995, - 1966, 2001, 2002, 2001, 2003, 2002, 2001, 1996, 2003, 1996, 2004, 2003, - 2002, 2003, 1997, 2003, 2005, 1997, 2003, 2004, 2005, 2004, 1998, 2005, - 1996, 2006, 2007, 2006, 2008, 2007, 2006, 1963, 2008, 1963, 2009, 2008, - 2007, 2008, 1998, 2008, 2010, 1998, 2008, 2009, 2010, 2009, 1999, 2010, - 1997, 2011, 2012, 2011, 2013, 2012, 2011, 1998, 2013, 1998, 2014, 2013, - 2012, 2013, 1968, 2013, 2015, 1968, 2013, 2014, 2015, 2014, 2000, 2015, - 1998, 2016, 2017, 2016, 2018, 2017, 2016, 1999, 2018, 1999, 2019, 2018, - 2017, 2018, 2000, 2018, 2020, 2000, 2018, 2019, 2020, 2019, 1969, 2020, - 1967, 2026, 2027, 2026, 2028, 2027, 2026, 2021, 2028, 2021, 2029, 2028, - 2027, 2028, 2022, 2028, 2030, 2022, 2028, 2029, 2030, 2029, 2023, 2030, - 2021, 2031, 2032, 2031, 2033, 2032, 2031, 1968, 2033, 1968, 2034, 2033, - 2032, 2033, 2023, 2033, 2035, 2023, 2033, 2034, 2035, 2034, 2024, 2035, - 2022, 2036, 2037, 2036, 2038, 2037, 2036, 2023, 2038, 2023, 2039, 2038, - 2037, 2038, 1964, 2038, 2040, 1964, 2038, 2039, 2040, 2039, 2025, 2040, - 2023, 2041, 2042, 2041, 2043, 2042, 2041, 2024, 2043, 2024, 2044, 2043, - 2042, 2043, 2025, 2043, 2045, 2025, 2043, 2044, 2045, 2044, 1970, 2045, - 1968, 2051, 2052, 2051, 2053, 2052, 2051, 2046, 2053, 2046, 2054, 2053, - 2052, 2053, 2047, 2053, 2055, 2047, 2053, 2054, 2055, 2054, 2048, 2055, - 2046, 2056, 2057, 2056, 2058, 2057, 2056, 1969, 2058, 1969, 2059, 2058, - 2057, 2058, 2048, 2058, 2060, 2048, 2058, 2059, 2060, 2059, 2049, 2060, - 2047, 2061, 2062, 2061, 2063, 2062, 2061, 2048, 2063, 2048, 2064, 2063, - 2062, 2063, 1970, 2063, 2065, 1970, 2063, 2064, 2065, 2064, 2050, 2065, - 2048, 2066, 2067, 2066, 2068, 2067, 2066, 2049, 2068, 2049, 2069, 2068, - 2067, 2068, 2050, 2068, 2070, 2050, 2068, 2069, 2070, 2069, 1965, 2070, - 2071, 2085, 2086, 2085, 2087, 2086, 2085, 2080, 2087, 2080, 2088, 2087, - 2086, 2087, 2081, 2087, 2089, 2081, 2087, 2088, 2089, 2088, 2082, 2089, - 2080, 2090, 2091, 2090, 2092, 2091, 2090, 2075, 2092, 2075, 2093, 2092, - 2091, 2092, 2082, 2092, 2094, 2082, 2092, 2093, 2094, 2093, 2083, 2094, - 2081, 2095, 2096, 2095, 2097, 2096, 2095, 2082, 2097, 2082, 2098, 2097, - 2096, 2097, 2076, 2097, 2099, 2076, 2097, 2098, 2099, 2098, 2084, 2099, - 2082, 2100, 2101, 2100, 2102, 2101, 2100, 2083, 2102, 2083, 2103, 2102, - 2101, 2102, 2084, 2102, 2104, 2084, 2102, 2103, 2104, 2103, 2077, 2104, - 2075, 2110, 2111, 2110, 2112, 2111, 2110, 2105, 2112, 2105, 2113, 2112, - 2111, 2112, 2106, 2112, 2114, 2106, 2112, 2113, 2114, 2113, 2107, 2114, - 2105, 2115, 2116, 2115, 2117, 2116, 2115, 2072, 2117, 2072, 2118, 2117, - 2116, 2117, 2107, 2117, 2119, 2107, 2117, 2118, 2119, 2118, 2108, 2119, - 2106, 2120, 2121, 2120, 2122, 2121, 2120, 2107, 2122, 2107, 2123, 2122, - 2121, 2122, 2077, 2122, 2124, 2077, 2122, 2123, 2124, 2123, 2109, 2124, - 2107, 2125, 2126, 2125, 2127, 2126, 2125, 2108, 2127, 2108, 2128, 2127, - 2126, 2127, 2109, 2127, 2129, 2109, 2127, 2128, 2129, 2128, 2078, 2129, - 2076, 2135, 2136, 2135, 2137, 2136, 2135, 2130, 2137, 2130, 2138, 2137, - 2136, 2137, 2131, 2137, 2139, 2131, 2137, 2138, 2139, 2138, 2132, 2139, - 2130, 2140, 2141, 2140, 2142, 2141, 2140, 2077, 2142, 2077, 2143, 2142, - 2141, 2142, 2132, 2142, 2144, 2132, 2142, 2143, 2144, 2143, 2133, 2144, - 2131, 2145, 2146, 2145, 2147, 2146, 2145, 2132, 2147, 2132, 2148, 2147, - 2146, 2147, 2073, 2147, 2149, 2073, 2147, 2148, 2149, 2148, 2134, 2149, - 2132, 2150, 2151, 2150, 2152, 2151, 2150, 2133, 2152, 2133, 2153, 2152, - 2151, 2152, 2134, 2152, 2154, 2134, 2152, 2153, 2154, 2153, 2079, 2154, - 2077, 2160, 2161, 2160, 2162, 2161, 2160, 2155, 2162, 2155, 2163, 2162, - 2161, 2162, 2156, 2162, 2164, 2156, 2162, 2163, 2164, 2163, 2157, 2164, - 2155, 2165, 2166, 2165, 2167, 2166, 2165, 2078, 2167, 2078, 2168, 2167, - 2166, 2167, 2157, 2167, 2169, 2157, 2167, 2168, 2169, 2168, 2158, 2169, - 2156, 2170, 2171, 2170, 2172, 2171, 2170, 2157, 2172, 2157, 2173, 2172, - 2171, 2172, 2079, 2172, 2174, 2079, 2172, 2173, 2174, 2173, 2159, 2174, - 2157, 2175, 2176, 2175, 2177, 2176, 2175, 2158, 2177, 2158, 2178, 2177, - 2176, 2177, 2159, 2177, 2179, 2159, 2177, 2178, 2179, 2178, 2074, 2179, - 2194, 2196, 2195, 2189, 2197, 2196, 2195, 2196, 2190, 2196, 2198, 2190, - 2196, 2197, 2198, 2197, 2191, 2198, 2199, 2201, 2200, 2184, 2202, 2201, - 2200, 2201, 2191, 2201, 2203, 2191, 2201, 2202, 2203, 2202, 2192, 2203, - 2190, 2204, 2205, 2204, 2206, 2205, 2204, 2191, 2206, 2191, 2207, 2206, - 2205, 2206, 2185, 2206, 2208, 2185, 2206, 2207, 2208, 2207, 2193, 2208, - 2191, 2209, 2210, 2209, 2211, 2210, 2209, 2192, 2211, 2192, 2212, 2211, - 2210, 2211, 2193, 2211, 2213, 2193, 2211, 2212, 2213, 2212, 2186, 2213, - 2219, 2221, 2220, 2214, 2222, 2221, 2220, 2221, 2215, 2221, 2223, 2215, - 2221, 2222, 2223, 2222, 2216, 2223, 2224, 2226, 2225, 2181, 2227, 2226, - 2225, 2226, 2216, 2226, 2228, 2216, 2226, 2227, 2228, 2227, 2217, 2228, - 2215, 2229, 2230, 2229, 2231, 2230, 2229, 2216, 2231, 2216, 2232, 2231, - 2230, 2231, 2186, 2231, 2233, 2186, 2231, 2232, 2233, 2232, 2218, 2233, - 2216, 2234, 2235, 2234, 2236, 2235, 2234, 2217, 2236, 2217, 2237, 2236, - 2235, 2236, 2218, 2236, 2238, 2218, 2236, 2237, 2238, 2237, 2187, 2238, - 2185, 2244, 2245, 2244, 2246, 2245, 2244, 2239, 2246, 2239, 2247, 2246, - 2245, 2246, 2240, 2246, 2248, 2240, 2246, 2247, 2248, 2247, 2241, 2248, - 2239, 2249, 2250, 2249, 2251, 2250, 2249, 2186, 2251, 2186, 2252, 2251, - 2250, 2251, 2241, 2251, 2253, 2241, 2251, 2252, 2253, 2252, 2242, 2253, - 2240, 2254, 2255, 2254, 2256, 2255, 2254, 2241, 2256, 2241, 2257, 2256, - 2255, 2256, 2182, 2256, 2258, 2182, 2256, 2257, 2258, 2257, 2243, 2258, - 2241, 2259, 2260, 2259, 2261, 2260, 2259, 2242, 2261, 2242, 2262, 2261, - 2260, 2261, 2243, 2261, 2263, 2243, 2261, 2262, 2263, 2262, 2188, 2263, - 2186, 2269, 2270, 2269, 2271, 2270, 2269, 2264, 2271, 2264, 2272, 2271, - 2270, 2271, 2265, 2271, 2273, 2265, 2271, 2272, 2273, 2272, 2266, 2273, - 2264, 2274, 2275, 2274, 2276, 2275, 2274, 2187, 2276, 2187, 2277, 2276, - 2275, 2276, 2266, 2276, 2278, 2266, 2276, 2277, 2278, 2277, 2267, 2278, - 2265, 2279, 2280, 2279, 2281, 2280, 2279, 2266, 2281, 2266, 2282, 2281, - 2280, 2281, 2188, 2281, 2283, 2188, 2281, 2282, 2283, 2282, 2268, 2283, - 2266, 2284, 2285, 2284, 2286, 2285, 2284, 2267, 2286, 2267, 2287, 2286, - 2285, 2286, 2268, 2286, 2288, 2268, 2286, 2287, 2288, 2287, 2183, 2288, - 2303, 2305, 2304, 2298, 2306, 2305, 2304, 2305, 2299, 2305, 2307, 2299, - 2305, 2306, 2307, 2306, 2300, 2307, 2308, 2310, 2309, 2293, 2311, 2310, - 2309, 2310, 2300, 2310, 2312, 2300, 2310, 2311, 2312, 2311, 2301, 2312, - 2299, 2313, 2314, 2313, 2315, 2314, 2313, 2300, 2315, 2300, 2316, 2315, - 2314, 2315, 2294, 2315, 2317, 2294, 2315, 2316, 2317, 2316, 2302, 2317, - 2300, 2318, 2319, 2318, 2320, 2319, 2318, 2301, 2320, 2301, 2321, 2320, - 2319, 2320, 2302, 2320, 2322, 2302, 2320, 2321, 2322, 2321, 2295, 2322, - 2328, 2330, 2329, 2323, 2331, 2330, 2329, 2330, 2324, 2330, 2332, 2324, - 2330, 2331, 2332, 2331, 2325, 2332, 2333, 2335, 2334, 2290, 2336, 2335, - 2334, 2335, 2325, 2335, 2337, 2325, 2335, 2336, 2337, 2336, 2326, 2337, - 2324, 2338, 2339, 2338, 2340, 2339, 2338, 2325, 2340, 2325, 2341, 2340, - 2339, 2340, 2295, 2340, 2342, 2295, 2340, 2341, 2342, 2341, 2327, 2342, - 2325, 2343, 2344, 2343, 2345, 2344, 2343, 2326, 2345, 2326, 2346, 2345, - 2344, 2345, 2327, 2345, 2347, 2327, 2345, 2346, 2347, 2346, 2296, 2347, - 2294, 2353, 2354, 2353, 2355, 2354, 2353, 2348, 2355, 2348, 2356, 2355, - 2354, 2355, 2349, 2355, 2357, 2349, 2355, 2356, 2357, 2356, 2350, 2357, - 2348, 2358, 2359, 2358, 2360, 2359, 2358, 2295, 2360, 2295, 2361, 2360, - 2359, 2360, 2350, 2360, 2362, 2350, 2360, 2361, 2362, 2361, 2351, 2362, - 2349, 2363, 2364, 2363, 2365, 2364, 2363, 2350, 2365, 2350, 2366, 2365, - 2364, 2365, 2291, 2365, 2367, 2291, 2365, 2366, 2367, 2366, 2352, 2367, - 2350, 2368, 2369, 2368, 2370, 2369, 2368, 2351, 2370, 2351, 2371, 2370, - 2369, 2370, 2352, 2370, 2372, 2352, 2370, 2371, 2372, 2371, 2297, 2372, - 2295, 2378, 2379, 2378, 2380, 2379, 2378, 2373, 2380, 2373, 2381, 2380, - 2379, 2380, 2374, 2380, 2382, 2374, 2380, 2381, 2382, 2381, 2375, 2382, - 2373, 2383, 2384, 2383, 2385, 2384, 2383, 2296, 2385, 2296, 2386, 2385, - 2384, 2385, 2375, 2385, 2387, 2375, 2385, 2386, 2387, 2386, 2376, 2387, - 2374, 2388, 2389, 2388, 2390, 2389, 2388, 2375, 2390, 2375, 2391, 2390, - 2389, 2390, 2297, 2390, 2392, 2297, 2390, 2391, 2392, 2391, 2377, 2392, - 2375, 2393, 2394, 2393, 2395, 2394, 2393, 2376, 2395, 2376, 2396, 2395, - 2394, 2395, 2377, 2395, 2397, 2377, 2395, 2396, 2397, 2396, 2292, 2397, - 2412, 2414, 2413, 2407, 2415, 2414, 2413, 2414, 2408, 2414, 2416, 2408, - 2414, 2415, 2416, 2415, 2409, 2416, 2417, 2419, 2418, 2402, 2420, 2419, - 2418, 2419, 2409, 2419, 2421, 2409, 2419, 2420, 2421, 2420, 2410, 2421, - 2408, 2422, 2423, 2422, 2424, 2423, 2422, 2409, 2424, 2409, 2425, 2424, - 2423, 2424, 2403, 2424, 2426, 2403, 2424, 2425, 2426, 2425, 2411, 2426, - 2409, 2427, 2428, 2427, 2429, 2428, 2427, 2410, 2429, 2410, 2430, 2429, - 2428, 2429, 2411, 2429, 2431, 2411, 2429, 2430, 2431, 2430, 2404, 2431, - 2437, 2439, 2438, 2432, 2440, 2439, 2438, 2439, 2433, 2439, 2441, 2433, - 2439, 2440, 2441, 2440, 2434, 2441, 2442, 2444, 2443, 2399, 2445, 2444, - 2443, 2444, 2434, 2444, 2446, 2434, 2444, 2445, 2446, 2445, 2435, 2446, - 2433, 2447, 2448, 2447, 2449, 2448, 2447, 2434, 2449, 2434, 2450, 2449, - 2448, 2449, 2404, 2449, 2451, 2404, 2449, 2450, 2451, 2450, 2436, 2451, - 2434, 2452, 2453, 2452, 2454, 2453, 2452, 2435, 2454, 2435, 2455, 2454, - 2453, 2454, 2436, 2454, 2456, 2436, 2454, 2455, 2456, 2455, 2405, 2456, - 2403, 2462, 2463, 2462, 2464, 2463, 2462, 2457, 2464, 2457, 2465, 2464, - 2463, 2464, 2458, 2464, 2466, 2458, 2464, 2465, 2466, 2465, 2459, 2466, - 2457, 2467, 2468, 2467, 2469, 2468, 2467, 2404, 2469, 2404, 2470, 2469, - 2468, 2469, 2459, 2469, 2471, 2459, 2469, 2470, 2471, 2470, 2460, 2471, - 2458, 2472, 2473, 2472, 2474, 2473, 2472, 2459, 2474, 2459, 2475, 2474, - 2473, 2474, 2400, 2474, 2476, 2400, 2474, 2475, 2476, 2475, 2461, 2476, - 2459, 2477, 2478, 2477, 2479, 2478, 2477, 2460, 2479, 2460, 2480, 2479, - 2478, 2479, 2461, 2479, 2481, 2461, 2479, 2480, 2481, 2480, 2406, 2481, - 2404, 2487, 2488, 2487, 2489, 2488, 2487, 2482, 2489, 2482, 2490, 2489, - 2488, 2489, 2483, 2489, 2491, 2483, 2489, 2490, 2491, 2490, 2484, 2491, - 2482, 2492, 2493, 2492, 2494, 2493, 2492, 2405, 2494, 2405, 2495, 2494, - 2493, 2494, 2484, 2494, 2496, 2484, 2494, 2495, 2496, 2495, 2485, 2496, - 2483, 2497, 2498, 2497, 2499, 2498, 2497, 2484, 2499, 2484, 2500, 2499, - 2498, 2499, 2406, 2499, 2501, 2406, 2499, 2500, 2501, 2500, 2486, 2501, - 2484, 2502, 2503, 2502, 2504, 2503, 2502, 2485, 2504, 2485, 2505, 2504, - 2503, 2504, 2486, 2504, 2506, 2486, 2504, 2505, 2506, 2505, 2401, 2506, - 2521, 2523, 2522, 2516, 2524, 2523, 2522, 2523, 2517, 2523, 2525, 2517, - 2523, 2524, 2525, 2524, 2518, 2525, 2526, 2528, 2527, 2511, 2529, 2528, - 2527, 2528, 2518, 2528, 2530, 2518, 2528, 2529, 2530, 2529, 2519, 2530, - 2517, 2531, 2532, 2531, 2533, 2532, 2531, 2518, 2533, 2518, 2534, 2533, - 2532, 2533, 2512, 2533, 2535, 2512, 2533, 2534, 2535, 2534, 2520, 2535, - 2518, 2536, 2537, 2536, 2538, 2537, 2536, 2519, 2538, 2519, 2539, 2538, - 2537, 2538, 2520, 2538, 2540, 2520, 2538, 2539, 2540, 2539, 2513, 2540, - 2546, 2548, 2547, 2541, 2549, 2548, 2547, 2548, 2542, 2548, 2550, 2542, - 2548, 2549, 2550, 2549, 2543, 2550, 2551, 2553, 2552, 2508, 2554, 2553, - 2552, 2553, 2543, 2553, 2555, 2543, 2553, 2554, 2555, 2554, 2544, 2555, - 2542, 2556, 2557, 2556, 2558, 2557, 2556, 2543, 2558, 2543, 2559, 2558, - 2557, 2558, 2513, 2558, 2560, 2513, 2558, 2559, 2560, 2559, 2545, 2560, - 2543, 2561, 2562, 2561, 2563, 2562, 2561, 2544, 2563, 2544, 2564, 2563, - 2562, 2563, 2545, 2563, 2565, 2545, 2563, 2564, 2565, 2564, 2514, 2565, - 2512, 2571, 2572, 2571, 2573, 2572, 2571, 2566, 2573, 2566, 2574, 2573, - 2572, 2573, 2567, 2573, 2575, 2567, 2573, 2574, 2575, 2574, 2568, 2575, - 2566, 2576, 2577, 2576, 2578, 2577, 2576, 2513, 2578, 2513, 2579, 2578, - 2577, 2578, 2568, 2578, 2580, 2568, 2578, 2579, 2580, 2579, 2569, 2580, - 2567, 2581, 2582, 2581, 2583, 2582, 2581, 2568, 2583, 2568, 2584, 2583, - 2582, 2583, 2509, 2583, 2585, 2509, 2583, 2584, 2585, 2584, 2570, 2585, - 2568, 2586, 2587, 2586, 2588, 2587, 2586, 2569, 2588, 2569, 2589, 2588, - 2587, 2588, 2570, 2588, 2590, 2570, 2588, 2589, 2590, 2589, 2515, 2590, - 2513, 2596, 2597, 2596, 2598, 2597, 2596, 2591, 2598, 2591, 2599, 2598, - 2597, 2598, 2592, 2598, 2600, 2592, 2598, 2599, 2600, 2599, 2593, 2600, - 2591, 2601, 2602, 2601, 2603, 2602, 2601, 2514, 2603, 2514, 2604, 2603, - 2602, 2603, 2593, 2603, 2605, 2593, 2603, 2604, 2605, 2604, 2594, 2605, - 2592, 2606, 2607, 2606, 2608, 2607, 2606, 2593, 2608, 2593, 2609, 2608, - 2607, 2608, 2515, 2608, 2610, 2515, 2608, 2609, 2610, 2609, 2595, 2610, - 2593, 2611, 2612, 2611, 2613, 2612, 2611, 2594, 2613, 2594, 2614, 2613, - 2612, 2613, 2595, 2613, 2615, 2595, 2613, 2614, 2615, 2614, 2510, 2615, - 2616, 2630, 2631, 2630, 2632, 2631, 2630, 2625, 2632, 2625, 2633, 2632, - 2631, 2632, 2626, 2632, 2634, 2626, 2632, 2633, 2634, 2633, 2627, 2634, - 2625, 2635, 2636, 2635, 2637, 2636, 2635, 2620, 2637, 2620, 2638, 2637, - 2636, 2637, 2627, 2637, 2639, 2627, 2637, 2638, 2639, 2638, 2628, 2639, - 2626, 2640, 2641, 2640, 2642, 2641, 2640, 2627, 2642, 2627, 2643, 2642, - 2641, 2642, 2621, 2642, 2644, 2621, 2642, 2643, 2644, 2643, 2629, 2644, - 2627, 2645, 2646, 2645, 2647, 2646, 2645, 2628, 2647, 2628, 2648, 2647, - 2646, 2647, 2629, 2647, 2649, 2629, 2647, 2648, 2649, 2648, 2622, 2649, - 2620, 2655, 2656, 2655, 2657, 2656, 2655, 2650, 2657, 2650, 2658, 2657, - 2656, 2657, 2651, 2657, 2659, 2651, 2657, 2658, 2659, 2658, 2652, 2659, - 2650, 2660, 2661, 2660, 2662, 2661, 2660, 2617, 2662, 2617, 2663, 2662, - 2661, 2662, 2652, 2662, 2664, 2652, 2662, 2663, 2664, 2663, 2653, 2664, - 2651, 2665, 2666, 2665, 2667, 2666, 2665, 2652, 2667, 2652, 2668, 2667, - 2666, 2667, 2622, 2667, 2669, 2622, 2667, 2668, 2669, 2668, 2654, 2669, - 2652, 2670, 2671, 2670, 2672, 2671, 2670, 2653, 2672, 2653, 2673, 2672, - 2671, 2672, 2654, 2672, 2674, 2654, 2672, 2673, 2674, 2673, 2623, 2674, - 2621, 2680, 2681, 2680, 2682, 2681, 2680, 2675, 2682, 2675, 2683, 2682, - 2681, 2682, 2676, 2682, 2684, 2676, 2682, 2683, 2684, 2683, 2677, 2684, - 2675, 2685, 2686, 2685, 2687, 2686, 2685, 2622, 2687, 2622, 2688, 2687, - 2686, 2687, 2677, 2687, 2689, 2677, 2687, 2688, 2689, 2688, 2678, 2689, - 2676, 2690, 2691, 2690, 2692, 2691, 2690, 2677, 2692, 2677, 2693, 2692, - 2691, 2692, 2618, 2692, 2694, 2618, 2692, 2693, 2694, 2693, 2679, 2694, - 2677, 2695, 2696, 2695, 2697, 2696, 2695, 2678, 2697, 2678, 2698, 2697, - 2696, 2697, 2679, 2697, 2699, 2679, 2697, 2698, 2699, 2698, 2624, 2699, - 2622, 2705, 2706, 2705, 2707, 2706, 2705, 2700, 2707, 2700, 2708, 2707, - 2706, 2707, 2701, 2707, 2709, 2701, 2707, 2708, 2709, 2708, 2702, 2709, - 2700, 2710, 2711, 2710, 2712, 2711, 2710, 2623, 2712, 2623, 2713, 2712, - 2711, 2712, 2702, 2712, 2714, 2702, 2712, 2713, 2714, 2713, 2703, 2714, - 2701, 2715, 2716, 2715, 2717, 2716, 2715, 2702, 2717, 2702, 2718, 2717, - 2716, 2717, 2624, 2717, 2719, 2624, 2717, 2718, 2719, 2718, 2704, 2719, - 2702, 2720, 2721, 2720, 2722, 2721, 2720, 2703, 2722, 2703, 2723, 2722, - 2721, 2722, 2704, 2722, 2724, 2704, 2722, 2723, 2724, 2723, 2619, 2724, - 2725, 2739, 2740, 2739, 2741, 2740, 2739, 2734, 2741, 2734, 2742, 2741, - 2740, 2741, 2735, 2741, 2743, 2735, 2741, 2742, 2743, 2742, 2736, 2743, - 2734, 2744, 2745, 2744, 2746, 2745, 2744, 2729, 2746, 2729, 2747, 2746, - 2745, 2746, 2736, 2746, 2748, 2736, 2746, 2747, 2748, 2747, 2737, 2748, - 2735, 2749, 2750, 2749, 2751, 2750, 2749, 2736, 2751, 2736, 2752, 2751, - 2750, 2751, 2730, 2751, 2753, 2730, 2751, 2752, 2753, 2752, 2738, 2753, - 2736, 2754, 2755, 2754, 2756, 2755, 2754, 2737, 2756, 2737, 2757, 2756, - 2755, 2756, 2738, 2756, 2758, 2738, 2756, 2757, 2758, 2757, 2731, 2758, - 2729, 2764, 2765, 2764, 2766, 2765, 2764, 2759, 2766, 2759, 2767, 2766, - 2765, 2766, 2760, 2766, 2768, 2760, 2766, 2767, 2768, 2767, 2761, 2768, - 2759, 2769, 2770, 2769, 2771, 2770, 2769, 2726, 2771, 2726, 2772, 2771, - 2770, 2771, 2761, 2771, 2773, 2761, 2771, 2772, 2773, 2772, 2762, 2773, - 2760, 2774, 2775, 2774, 2776, 2775, 2774, 2761, 2776, 2761, 2777, 2776, - 2775, 2776, 2731, 2776, 2778, 2731, 2776, 2777, 2778, 2777, 2763, 2778, - 2761, 2779, 2780, 2779, 2781, 2780, 2779, 2762, 2781, 2762, 2782, 2781, - 2780, 2781, 2763, 2781, 2783, 2763, 2781, 2782, 2783, 2782, 2732, 2783, - 2730, 2789, 2790, 2789, 2791, 2790, 2789, 2784, 2791, 2784, 2792, 2791, - 2790, 2791, 2785, 2791, 2793, 2785, 2791, 2792, 2793, 2792, 2786, 2793, - 2784, 2794, 2795, 2794, 2796, 2795, 2794, 2731, 2796, 2731, 2797, 2796, - 2795, 2796, 2786, 2796, 2798, 2786, 2796, 2797, 2798, 2797, 2787, 2798, - 2785, 2799, 2800, 2799, 2801, 2800, 2799, 2786, 2801, 2786, 2802, 2801, - 2800, 2801, 2727, 2801, 2803, 2727, 2801, 2802, 2803, 2802, 2788, 2803, - 2786, 2804, 2805, 2804, 2806, 2805, 2804, 2787, 2806, 2787, 2807, 2806, - 2805, 2806, 2788, 2806, 2808, 2788, 2806, 2807, 2808, 2807, 2733, 2808, - 2731, 2814, 2815, 2814, 2816, 2815, 2814, 2809, 2816, 2809, 2817, 2816, - 2815, 2816, 2810, 2816, 2818, 2810, 2816, 2817, 2818, 2817, 2811, 2818, - 2809, 2819, 2820, 2819, 2821, 2820, 2819, 2732, 2821, 2732, 2822, 2821, - 2820, 2821, 2811, 2821, 2823, 2811, 2821, 2822, 2823, 2822, 2812, 2823, - 2810, 2824, 2825, 2824, 2826, 2825, 2824, 2811, 2826, 2811, 2827, 2826, - 2825, 2826, 2733, 2826, 2828, 2733, 2826, 2827, 2828, 2827, 2813, 2828, - 2811, 2829, 2830, 2829, 2831, 2830, 2829, 2812, 2831, 2812, 2832, 2831, - 2830, 2831, 2813, 2831, 2833, 2813, 2831, 2832, 2833, 2832, 2728, 2833, - 2834, 2848, 2849, 2848, 2850, 2849, 2848, 2843, 2850, 2843, 2851, 2850, - 2849, 2850, 2844, 2850, 2852, 2844, 2850, 2851, 2852, 2851, 2845, 2852, - 2843, 2853, 2854, 2853, 2855, 2854, 2853, 2838, 2855, 2838, 2856, 2855, - 2854, 2855, 2845, 2855, 2857, 2845, 2855, 2856, 2857, 2856, 2846, 2857, - 2844, 2858, 2859, 2858, 2860, 2859, 2858, 2845, 2860, 2845, 2861, 2860, - 2859, 2860, 2839, 2860, 2862, 2839, 2860, 2861, 2862, 2861, 2847, 2862, - 2845, 2863, 2864, 2863, 2865, 2864, 2863, 2846, 2865, 2846, 2866, 2865, - 2864, 2865, 2847, 2865, 2867, 2847, 2865, 2866, 2867, 2866, 2840, 2867, - 2838, 2873, 2874, 2873, 2875, 2874, 2873, 2868, 2875, 2868, 2876, 2875, - 2874, 2875, 2869, 2875, 2877, 2869, 2875, 2876, 2877, 2876, 2870, 2877, - 2868, 2878, 2879, 2878, 2880, 2879, 2878, 2835, 2880, 2835, 2881, 2880, - 2879, 2880, 2870, 2880, 2882, 2870, 2880, 2881, 2882, 2881, 2871, 2882, - 2869, 2883, 2884, 2883, 2885, 2884, 2883, 2870, 2885, 2870, 2886, 2885, - 2884, 2885, 2840, 2885, 2887, 2840, 2885, 2886, 2887, 2886, 2872, 2887, - 2870, 2888, 2889, 2888, 2890, 2889, 2888, 2871, 2890, 2871, 2891, 2890, - 2889, 2890, 2872, 2890, 2892, 2872, 2890, 2891, 2892, 2891, 2841, 2892, - 2839, 2898, 2899, 2898, 2900, 2899, 2898, 2893, 2900, 2893, 2901, 2900, - 2899, 2900, 2894, 2900, 2902, 2894, 2900, 2901, 2902, 2901, 2895, 2902, - 2893, 2903, 2904, 2903, 2905, 2904, 2903, 2840, 2905, 2840, 2906, 2905, - 2904, 2905, 2895, 2905, 2907, 2895, 2905, 2906, 2907, 2906, 2896, 2907, - 2894, 2908, 2909, 2908, 2910, 2909, 2908, 2895, 2910, 2895, 2911, 2910, - 2909, 2910, 2836, 2910, 2912, 2836, 2910, 2911, 2912, 2911, 2897, 2912, - 2895, 2913, 2914, 2913, 2915, 2914, 2913, 2896, 2915, 2896, 2916, 2915, - 2914, 2915, 2897, 2915, 2917, 2897, 2915, 2916, 2917, 2916, 2842, 2917, - 2840, 2923, 2924, 2923, 2925, 2924, 2923, 2918, 2925, 2918, 2926, 2925, - 2924, 2925, 2919, 2925, 2927, 2919, 2925, 2926, 2927, 2926, 2920, 2927, - 2918, 2928, 2929, 2928, 2930, 2929, 2928, 2841, 2930, 2841, 2931, 2930, - 2929, 2930, 2920, 2930, 2932, 2920, 2930, 2931, 2932, 2931, 2921, 2932, - 2919, 2933, 2934, 2933, 2935, 2934, 2933, 2920, 2935, 2920, 2936, 2935, - 2934, 2935, 2842, 2935, 2937, 2842, 2935, 2936, 2937, 2936, 2922, 2937, - 2920, 2938, 2939, 2938, 2940, 2939, 2938, 2921, 2940, 2921, 2941, 2940, - 2939, 2940, 2922, 2940, 2942, 2922, 2940, 2941, 2942, 2941, 2837, 2942, - 2943, 2957, 2958, 2957, 2959, 2958, 2957, 2952, 2959, 2952, 2960, 2959, - 2958, 2959, 2953, 2959, 2961, 2953, 2959, 2960, 2961, 2960, 2954, 2961, - 2952, 2962, 2963, 2962, 2964, 2963, 2962, 2947, 2964, 2947, 2965, 2964, - 2963, 2964, 2954, 2964, 2966, 2954, 2964, 2965, 2966, 2965, 2955, 2966, - 2953, 2967, 2968, 2967, 2969, 2968, 2967, 2954, 2969, 2954, 2970, 2969, - 2968, 2969, 2948, 2969, 2971, 2948, 2969, 2970, 2971, 2970, 2956, 2971, - 2954, 2972, 2973, 2972, 2974, 2973, 2972, 2955, 2974, 2955, 2975, 2974, - 2973, 2974, 2956, 2974, 2976, 2956, 2974, 2975, 2976, 2975, 2949, 2976, - 2947, 2982, 2983, 2982, 2984, 2983, 2982, 2977, 2984, 2977, 2985, 2984, - 2983, 2984, 2978, 2984, 2986, 2978, 2984, 2985, 2986, 2985, 2979, 2986, - 2977, 2987, 2988, 2987, 2989, 2988, 2987, 2944, 2989, 2944, 2990, 2989, - 2988, 2989, 2979, 2989, 2991, 2979, 2989, 2990, 2991, 2990, 2980, 2991, - 2978, 2992, 2993, 2992, 2994, 2993, 2992, 2979, 2994, 2979, 2995, 2994, - 2993, 2994, 2949, 2994, 2996, 2949, 2994, 2995, 2996, 2995, 2981, 2996, - 2979, 2997, 2998, 2997, 2999, 2998, 2997, 2980, 2999, 2980, 3000, 2999, - 2998, 2999, 2981, 2999, 3001, 2981, 2999, 3000, 3001, 3000, 2950, 3001, - 2948, 3007, 3008, 3007, 3009, 3008, 3007, 3002, 3009, 3002, 3010, 3009, - 3008, 3009, 3003, 3009, 3011, 3003, 3009, 3010, 3011, 3010, 3004, 3011, - 3002, 3012, 3013, 3012, 3014, 3013, 3012, 2949, 3014, 2949, 3015, 3014, - 3013, 3014, 3004, 3014, 3016, 3004, 3014, 3015, 3016, 3015, 3005, 3016, - 3003, 3017, 3018, 3017, 3019, 3018, 3017, 3004, 3019, 3004, 3020, 3019, - 3018, 3019, 2945, 3019, 3021, 2945, 3019, 3020, 3021, 3020, 3006, 3021, - 3004, 3022, 3023, 3022, 3024, 3023, 3022, 3005, 3024, 3005, 3025, 3024, - 3023, 3024, 3006, 3024, 3026, 3006, 3024, 3025, 3026, 3025, 2951, 3026, - 2949, 3032, 3033, 3032, 3034, 3033, 3032, 3027, 3034, 3027, 3035, 3034, - 3033, 3034, 3028, 3034, 3036, 3028, 3034, 3035, 3036, 3035, 3029, 3036, - 3027, 3037, 3038, 3037, 3039, 3038, 3037, 2950, 3039, 2950, 3040, 3039, - 3038, 3039, 3029, 3039, 3041, 3029, 3039, 3040, 3041, 3040, 3030, 3041, - 3028, 3042, 3043, 3042, 3044, 3043, 3042, 3029, 3044, 3029, 3045, 3044, - 3043, 3044, 2951, 3044, 3046, 2951, 3044, 3045, 3046, 3045, 3031, 3046, - 3029, 3047, 3048, 3047, 3049, 3048, 3047, 3030, 3049, 3030, 3050, 3049, - 3048, 3049, 3031, 3049, 3051, 3031, 3049, 3050, 3051, 3050, 2946, 3051, - 3066, 3068, 3067, 3061, 3069, 3068, 3067, 3068, 3062, 3068, 3070, 3062, - 3068, 3069, 3070, 3069, 3063, 3070, 3071, 3073, 3072, 3056, 3074, 3073, - 3072, 3073, 3063, 3073, 3075, 3063, 3073, 3074, 3075, 3074, 3064, 3075, - 3062, 3076, 3077, 3076, 3078, 3077, 3076, 3063, 3078, 3063, 3079, 3078, - 3077, 3078, 3057, 3078, 3080, 3057, 3078, 3079, 3080, 3079, 3065, 3080, - 3063, 3081, 3082, 3081, 3083, 3082, 3081, 3064, 3083, 3064, 3084, 3083, - 3082, 3083, 3065, 3083, 3085, 3065, 3083, 3084, 3085, 3084, 3058, 3085, - 3091, 3093, 3092, 3086, 3094, 3093, 3092, 3093, 3087, 3093, 3095, 3087, - 3093, 3094, 3095, 3094, 3088, 3095, 3096, 3098, 3097, 3053, 3099, 3098, - 3097, 3098, 3088, 3098, 3100, 3088, 3098, 3099, 3100, 3099, 3089, 3100, - 3087, 3101, 3102, 3101, 3103, 3102, 3101, 3088, 3103, 3088, 3104, 3103, - 3102, 3103, 3058, 3103, 3105, 3058, 3103, 3104, 3105, 3104, 3090, 3105, - 3088, 3106, 3107, 3106, 3108, 3107, 3106, 3089, 3108, 3089, 3109, 3108, - 3107, 3108, 3090, 3108, 3110, 3090, 3108, 3109, 3110, 3109, 3059, 3110, - 3057, 3116, 3117, 3116, 3118, 3117, 3116, 3111, 3118, 3111, 3119, 3118, - 3117, 3118, 3112, 3118, 3120, 3112, 3118, 3119, 3120, 3119, 3113, 3120, - 3111, 3121, 3122, 3121, 3123, 3122, 3121, 3058, 3123, 3058, 3124, 3123, - 3122, 3123, 3113, 3123, 3125, 3113, 3123, 3124, 3125, 3124, 3114, 3125, - 3112, 3126, 3127, 3126, 3128, 3127, 3126, 3113, 3128, 3113, 3129, 3128, - 3127, 3128, 3054, 3128, 3130, 3054, 3128, 3129, 3130, 3129, 3115, 3130, - 3113, 3131, 3132, 3131, 3133, 3132, 3131, 3114, 3133, 3114, 3134, 3133, - 3132, 3133, 3115, 3133, 3135, 3115, 3133, 3134, 3135, 3134, 3060, 3135, - 3058, 3141, 3142, 3141, 3143, 3142, 3141, 3136, 3143, 3136, 3144, 3143, - 3142, 3143, 3137, 3143, 3145, 3137, 3143, 3144, 3145, 3144, 3138, 3145, - 3136, 3146, 3147, 3146, 3148, 3147, 3146, 3059, 3148, 3059, 3149, 3148, - 3147, 3148, 3138, 3148, 3150, 3138, 3148, 3149, 3150, 3149, 3139, 3150, - 3137, 3151, 3152, 3151, 3153, 3152, 3151, 3138, 3153, 3138, 3154, 3153, - 3152, 3153, 3060, 3153, 3155, 3060, 3153, 3154, 3155, 3154, 3140, 3155, - 3138, 3156, 3157, 3156, 3158, 3157, 3156, 3139, 3158, 3139, 3159, 3158, - 3157, 3158, 3140, 3158, 3160, 3140, 3158, 3159, 3160, 3159, 3055, 3160, - 3175, 3177, 3176, 3170, 3178, 3177, 3176, 3177, 3171, 3177, 3179, 3171, - 3177, 3178, 3179, 3178, 3172, 3179, 3180, 3182, 3181, 3165, 3183, 3182, - 3181, 3182, 3172, 3182, 3184, 3172, 3182, 3183, 3184, 3183, 3173, 3184, - 3171, 3185, 3186, 3185, 3187, 3186, 3185, 3172, 3187, 3172, 3188, 3187, - 3186, 3187, 3166, 3187, 3189, 3166, 3187, 3188, 3189, 3188, 3174, 3189, - 3172, 3190, 3191, 3190, 3192, 3191, 3190, 3173, 3192, 3173, 3193, 3192, - 3191, 3192, 3174, 3192, 3194, 3174, 3192, 3193, 3194, 3193, 3167, 3194, - 3200, 3202, 3201, 3195, 3203, 3202, 3201, 3202, 3196, 3202, 3204, 3196, - 3202, 3203, 3204, 3203, 3197, 3204, 3205, 3207, 3206, 3162, 3208, 3207, - 3206, 3207, 3197, 3207, 3209, 3197, 3207, 3208, 3209, 3208, 3198, 3209, - 3196, 3210, 3211, 3210, 3212, 3211, 3210, 3197, 3212, 3197, 3213, 3212, - 3211, 3212, 3167, 3212, 3214, 3167, 3212, 3213, 3214, 3213, 3199, 3214, - 3197, 3215, 3216, 3215, 3217, 3216, 3215, 3198, 3217, 3198, 3218, 3217, - 3216, 3217, 3199, 3217, 3219, 3199, 3217, 3218, 3219, 3218, 3168, 3219, - 3166, 3225, 3226, 3225, 3227, 3226, 3225, 3220, 3227, 3220, 3228, 3227, - 3226, 3227, 3221, 3227, 3229, 3221, 3227, 3228, 3229, 3228, 3222, 3229, - 3220, 3230, 3231, 3230, 3232, 3231, 3230, 3167, 3232, 3167, 3233, 3232, - 3231, 3232, 3222, 3232, 3234, 3222, 3232, 3233, 3234, 3233, 3223, 3234, - 3221, 3235, 3236, 3235, 3237, 3236, 3235, 3222, 3237, 3222, 3238, 3237, - 3236, 3237, 3163, 3237, 3239, 3163, 3237, 3238, 3239, 3238, 3224, 3239, - 3222, 3240, 3241, 3240, 3242, 3241, 3240, 3223, 3242, 3223, 3243, 3242, - 3241, 3242, 3224, 3242, 3244, 3224, 3242, 3243, 3244, 3243, 3169, 3244, - 3167, 3250, 3251, 3250, 3252, 3251, 3250, 3245, 3252, 3245, 3253, 3252, - 3251, 3252, 3246, 3252, 3254, 3246, 3252, 3253, 3254, 3253, 3247, 3254, - 3245, 3255, 3256, 3255, 3257, 3256, 3255, 3168, 3257, 3168, 3258, 3257, - 3256, 3257, 3247, 3257, 3259, 3247, 3257, 3258, 3259, 3258, 3248, 3259, - 3246, 3260, 3261, 3260, 3262, 3261, 3260, 3247, 3262, 3247, 3263, 3262, - 3261, 3262, 3169, 3262, 3264, 3169, 3262, 3263, 3264, 3263, 3249, 3264, - 3247, 3265, 3266, 3265, 3267, 3266, 3265, 3248, 3267, 3248, 3268, 3267, - 3266, 3267, 3249, 3267, 3269, 3249, 3267, 3268, 3269, 3268, 3164, 3269, - 3284, 3286, 3285, 3279, 3287, 3286, 3285, 3286, 3280, 3286, 3288, 3280, - 3286, 3287, 3288, 3287, 3281, 3288, 3289, 3291, 3290, 3274, 3292, 3291, - 3290, 3291, 3281, 3291, 3293, 3281, 3291, 3292, 3293, 3292, 3282, 3293, - 3280, 3294, 3295, 3294, 3296, 3295, 3294, 3281, 3296, 3281, 3297, 3296, - 3295, 3296, 3275, 3296, 3298, 3275, 3296, 3297, 3298, 3297, 3283, 3298, - 3281, 3299, 3300, 3299, 3301, 3300, 3299, 3282, 3301, 3282, 3302, 3301, - 3300, 3301, 3283, 3301, 3303, 3283, 3301, 3302, 3303, 3302, 3276, 3303, - 3309, 3311, 3310, 3304, 3312, 3311, 3310, 3311, 3305, 3311, 3313, 3305, - 3311, 3312, 3313, 3312, 3306, 3313, 3314, 3316, 3315, 3271, 3317, 3316, - 3315, 3316, 3306, 3316, 3318, 3306, 3316, 3317, 3318, 3317, 3307, 3318, - 3305, 3319, 3320, 3319, 3321, 3320, 3319, 3306, 3321, 3306, 3322, 3321, - 3320, 3321, 3276, 3321, 3323, 3276, 3321, 3322, 3323, 3322, 3308, 3323, - 3306, 3324, 3325, 3324, 3326, 3325, 3324, 3307, 3326, 3307, 3327, 3326, - 3325, 3326, 3308, 3326, 3328, 3308, 3326, 3327, 3328, 3327, 3277, 3328, - 3275, 3334, 3335, 3334, 3336, 3335, 3334, 3329, 3336, 3329, 3337, 3336, - 3335, 3336, 3330, 3336, 3338, 3330, 3336, 3337, 3338, 3337, 3331, 3338, - 3329, 3339, 3340, 3339, 3341, 3340, 3339, 3276, 3341, 3276, 3342, 3341, - 3340, 3341, 3331, 3341, 3343, 3331, 3341, 3342, 3343, 3342, 3332, 3343, - 3330, 3344, 3345, 3344, 3346, 3345, 3344, 3331, 3346, 3331, 3347, 3346, - 3345, 3346, 3272, 3346, 3348, 3272, 3346, 3347, 3348, 3347, 3333, 3348, - 3331, 3349, 3350, 3349, 3351, 3350, 3349, 3332, 3351, 3332, 3352, 3351, - 3350, 3351, 3333, 3351, 3353, 3333, 3351, 3352, 3353, 3352, 3278, 3353, - 3276, 3359, 3360, 3359, 3361, 3360, 3359, 3354, 3361, 3354, 3362, 3361, - 3360, 3361, 3355, 3361, 3363, 3355, 3361, 3362, 3363, 3362, 3356, 3363, - 3354, 3364, 3365, 3364, 3366, 3365, 3364, 3277, 3366, 3277, 3367, 3366, - 3365, 3366, 3356, 3366, 3368, 3356, 3366, 3367, 3368, 3367, 3357, 3368, - 3355, 3369, 3370, 3369, 3371, 3370, 3369, 3356, 3371, 3356, 3372, 3371, - 3370, 3371, 3278, 3371, 3373, 3278, 3371, 3372, 3373, 3372, 3358, 3373, - 3356, 3374, 3375, 3374, 3376, 3375, 3374, 3357, 3376, 3357, 3377, 3376, - 3375, 3376, 3358, 3376, 3378, 3358, 3376, 3377, 3378, 3377, 3273, 3378, - 3393, 3395, 3394, 3388, 3396, 3395, 3394, 3395, 3389, 3395, 3397, 3389, - 3395, 3396, 3397, 3396, 3390, 3397, 3398, 3400, 3399, 3383, 3401, 3400, - 3399, 3400, 3390, 3400, 3402, 3390, 3400, 3401, 3402, 3401, 3391, 3402, - 3389, 3403, 3404, 3403, 3405, 3404, 3403, 3390, 3405, 3390, 3406, 3405, - 3404, 3405, 3384, 3405, 3407, 3384, 3405, 3406, 3407, 3406, 3392, 3407, - 3390, 3408, 3409, 3408, 3410, 3409, 3408, 3391, 3410, 3391, 3411, 3410, - 3409, 3410, 3392, 3410, 3412, 3392, 3410, 3411, 3412, 3411, 3385, 3412, - 3418, 3420, 3419, 3413, 3421, 3420, 3419, 3420, 3414, 3420, 3422, 3414, - 3420, 3421, 3422, 3421, 3415, 3422, 3423, 3425, 3424, 3380, 3426, 3425, - 3424, 3425, 3415, 3425, 3427, 3415, 3425, 3426, 3427, 3426, 3416, 3427, - 3414, 3428, 3429, 3428, 3430, 3429, 3428, 3415, 3430, 3415, 3431, 3430, - 3429, 3430, 3385, 3430, 3432, 3385, 3430, 3431, 3432, 3431, 3417, 3432, - 3415, 3433, 3434, 3433, 3435, 3434, 3433, 3416, 3435, 3416, 3436, 3435, - 3434, 3435, 3417, 3435, 3437, 3417, 3435, 3436, 3437, 3436, 3386, 3437, - 3384, 3443, 3444, 3443, 3445, 3444, 3443, 3438, 3445, 3438, 3446, 3445, - 3444, 3445, 3439, 3445, 3447, 3439, 3445, 3446, 3447, 3446, 3440, 3447, - 3438, 3448, 3449, 3448, 3450, 3449, 3448, 3385, 3450, 3385, 3451, 3450, - 3449, 3450, 3440, 3450, 3452, 3440, 3450, 3451, 3452, 3451, 3441, 3452, - 3439, 3453, 3454, 3453, 3455, 3454, 3453, 3440, 3455, 3440, 3456, 3455, - 3454, 3455, 3381, 3455, 3457, 3381, 3455, 3456, 3457, 3456, 3442, 3457, - 3440, 3458, 3459, 3458, 3460, 3459, 3458, 3441, 3460, 3441, 3461, 3460, - 3459, 3460, 3442, 3460, 3462, 3442, 3460, 3461, 3462, 3461, 3387, 3462, - 3385, 3468, 3469, 3468, 3470, 3469, 3468, 3463, 3470, 3463, 3471, 3470, - 3469, 3470, 3464, 3470, 3472, 3464, 3470, 3471, 3472, 3471, 3465, 3472, - 3463, 3473, 3474, 3473, 3475, 3474, 3473, 3386, 3475, 3386, 3476, 3475, - 3474, 3475, 3465, 3475, 3477, 3465, 3475, 3476, 3477, 3476, 3466, 3477, - 3464, 3478, 3479, 3478, 3480, 3479, 3478, 3465, 3480, 3465, 3481, 3480, - 3479, 3480, 3387, 3480, 3482, 3387, 3480, 3481, 3482, 3481, 3467, 3482, - 3465, 3483, 3484, 3483, 3485, 3484, 3483, 3466, 3485, 3466, 3486, 3485, - 3484, 3485, 3467, 3485, 3487, 3467, 3485, 3486, 3487, 3486, 3382, 3487 -}; - -#endif diff --git a/examples/sensors/cubehouse/texture.fsh b/examples/sensors/cubehouse/texture.fsh deleted file mode 100644 index db8fb2c8..00000000 --- a/examples/sensors/cubehouse/texture.fsh +++ /dev/null @@ -1,51 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -uniform sampler2D tex; -varying mediump vec4 qColor; -varying mediump vec4 qSecondaryColor; -varying highp vec4 qTexCoord; - -void main(void) -{ - mediump vec4 col = texture2D(tex, qTexCoord.st); - mediump vec4 lcolor = clamp(qColor + vec4(qSecondaryColor.xyz, 0.0), 0.0, 1.0); - gl_FragColor = vec4(clamp(lcolor.rgb * (1.0 - col.a) + col.rgb * col.a, 0.0, 1.0), lcolor.a); -} diff --git a/examples/sensors/cubehouse/view.cpp b/examples/sensors/cubehouse/view.cpp deleted file mode 100644 index a3f5687a..00000000 --- a/examples/sensors/cubehouse/view.cpp +++ /dev/null @@ -1,291 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "view.h" -#include "teapot.h" -#include "cube.h" -#include -#include -#include -#include "qaccelerometer.h" - -#if defined(QT_OPENGL_ES) -#define USE_BUFFERS 1 -#endif - -//! [smoothed] -class smoothedaccelerometerfilter : public QObject, public QAccelerometerFilter -{ - qreal prevX; - qreal prevY; - qreal prevZ; - bool havePrev; - -public: - smoothedaccelerometerfilter(QObject *parent = 0) - : QObject(parent) - , QAccelerometerFilter() - , prevX(0) - , prevY(0) - , prevZ(0) - , havePrev(false) - { - } - - bool filter(QAccelerometerReading *reading) - { - // Smooth out the reported values. Large changes are applied as-is, - // and small jitters smooth to the rest position. - if (havePrev) { - qreal xdiff = reading->x() - prevX; - qreal ydiff = reading->y() - prevY; - qreal zdiff = reading->z() - prevZ; -#define threshold 0.196133f - if (qAbs(xdiff) < threshold && qAbs(ydiff) < threshold && qAbs(zdiff) < threshold) { - reading->setX(prevX + xdiff * 0.1f); - reading->setY(prevY + ydiff * 0.1f); - reading->setZ(prevZ + zdiff * 0.1f); - } - } - prevX = reading->x(); - prevY = reading->y(); - prevZ = reading->z(); - havePrev = true; - return true; - } -}; -//! [smoothed] - -View::View(QWidget *parent) - : QGLWidget(parent), - sensitivity(0.1f), - painter(0), - showFrameRate(false) -{ -#if (QT_VERSION >= QT_VERSION_CHECK(4, 7, 2)) - setAttribute(Qt::WA_LockPortraitOrientation); -#endif - - mainCamera = new Camera(this); - - roomCamera = new Camera(this); - roomCamera->setAdjustForAspectRatio(false); - -//! [accelerometer] - sensor = new QAccelerometer(this); - connect(sensor, SIGNAL(readingChanged()), this, SLOT(accelerometerTimeout())); - sensor->addFilter(new smoothedaccelerometerfilter(this)); - sensor->start(); -//! [accelerometer] - - time.start(); - - vertexBuffer = 0; - indexBuffer = 0; -} - -View::~View() -{ - delete painter; -} - -void View::resizeGL(int width, int height) -{ - glViewport(0, 0, width, height); -} - -void View::initializeGL() -{ -#if defined(QT_OPENGL_ES_2) - painter = new ShaderPainter(); -#else - painter = new FixedFunctionPainter(); -#endif - - glEnable(GL_DEPTH_TEST); - - roomMaterialBack = new Material(); - roomMaterialBack->setDiffuseColor(QColor(128, 100, 0)); - - roomMaterialLeftRight = new Material(); - roomMaterialLeftRight->setDiffuseColor(Qt::cyan); - - roomMaterialTopBottom = new Material(); - roomMaterialTopBottom->setDiffuseColor(Qt::yellow); - - cubeMaterial = new Material(); - cubeMaterial->setColor(QColor(170, 202, 0)); - - teapotMaterial = new Material(); - teapotMaterial->setAmbientColor(QColor(192, 150, 128)); - teapotMaterial->setSpecularColor(QColor(60, 60, 60)); - teapotMaterial->setShininess(128); - - roomModel = new LightModel(this); - roomModel->setAmbientSceneColor(Qt::white); - roomModel->setViewerPosition(LightModel::LocalViewer); - - normalModel = new LightModel(this); - - Light *light = new Light(this); - light->setPosition(QVector3D(0.0f, 0.0f, 3.0f)); - painter->setLight(light); - - texture = bindTexture(QImage(QLatin1String(":/qtlogo.png"))); - -#ifdef USE_BUFFERS - // Upload the teapot data into GL buffers for quicker rendering. - glGenBuffers(1, &vertexBuffer); - glBindBuffer(GL_ARRAY_BUFFER, vertexBuffer); - glBufferData(GL_ARRAY_BUFFER, - teapotVertexCount * teapotVertexStride * sizeof(float), - teapotVertexData, GL_STATIC_DRAW); - glBindBuffer(GL_ARRAY_BUFFER, 0); - - glGenBuffers(1, &indexBuffer); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, indexBuffer); - glBufferData(GL_ELEMENT_ARRAY_BUFFER, - teapotTriangleCount * 3 * sizeof(ushort), - teapotTriangleData, GL_STATIC_DRAW); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); -#endif -} - -void View::paintGL() -{ - if (showFrameRate) - qWarning("time since last frame: %d ms", time.restart()); - - qreal aspectRatio = qreal(width()) / qreal(height()); - QMatrix4x4 mv, mv2; - QMatrix4x4 proj; - - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - - mv = roomCamera->modelViewMatrix(); - proj = roomCamera->projectionMatrix(aspectRatio); - painter->setLightModel(roomModel); - painter->setMatrices(mv, proj); - - painter->selectMaterial(roomMaterialBack); - painter->drawQuad(QVector3D(-3.0f, -3.0f, -15.0f), - QVector3D( 3.0f, -3.0f, -15.0f), - QVector3D( 3.0f, 3.0f, -15.0f), - QVector3D(-3.0f, 3.0f, -15.0f), - QVector3D(0.0f, 0.0f, 1.0f)); - - painter->selectMaterial(roomMaterialLeftRight); - painter->drawQuad(QVector3D(-3.0f, -3.0f, -15.0f), - QVector3D(-3.0f, 3.0f, -15.0f), - QVector3D(-3.0f, 3.0f, 0.0f), - QVector3D(-3.0f, -3.0f, 0.0f), - QVector3D(1.0f, 0.0f, 0.0f)); - painter->drawQuad(QVector3D(3.0f, 3.0f, -15.0f), - QVector3D(3.0f, -3.0f, -15.0f), - QVector3D(3.0f, -3.0f, 0.0f), - QVector3D(3.0f, 3.0f, 0.0f), - QVector3D(-1.0f, 0.0f, 0.0f)); - - painter->selectMaterial(roomMaterialTopBottom); - painter->drawQuad(QVector3D(-3.0f, 3.0f, -15.0f), - QVector3D( 3.0f, 3.0f, -15.0f), - QVector3D( 3.0f, 3.0f, 0.0f), - QVector3D(-3.0f, 3.0f, 0.0f), - QVector3D(0.0f, -1.0f, 0.0f)); - painter->drawQuad(QVector3D(-3.0f, -3.0f, -15.0f), - QVector3D(-3.0f, -3.0f, 0.0f), - QVector3D( 3.0f, -3.0f, 0.0f), - QVector3D( 3.0f, -3.0f, -15.0f), - QVector3D(0.0f, 1.0f, 0.0f)); - - mv = mv2 = mainCamera->modelViewMatrix(); - proj = mainCamera->projectionMatrix(aspectRatio); - mv.translate(1.0f, -0.5f, 0.0f); - mv.rotate(45.0f, 1.0f, 1.0f, 1.0f); - painter->setMatrices(mv, proj); - painter->setLightModel(normalModel); - painter->selectTexturedMaterial(cubeMaterial); - painter->setVertices(cubeVertices, 8); - painter->setNormals(cubeVertices + 3, 8); - painter->setTexCoords(cubeVertices + 6, 8); - glDrawArrays(GL_TRIANGLES, 0, 36); - - mv2.translate(-0.8f, -1.5f, -3.0f); - painter->setMatrices(mv2, proj); - painter->selectMaterial(teapotMaterial); -#ifdef USE_BUFFERS - glBindBuffer(GL_ARRAY_BUFFER, vertexBuffer); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, indexBuffer); - painter->setVertices(0, 8); - painter->setNormals(reinterpret_cast(3 * sizeof(float)), 8); - painter->setTexCoords(reinterpret_cast(6 * sizeof(float)), 8); - glDrawElements(GL_TRIANGLES, teapotTriangleCount * 3, - GL_UNSIGNED_SHORT, 0); - glBindBuffer(GL_ARRAY_BUFFER, 0); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); -#else - painter->setVertices(teapotVertexData, 8); - painter->setNormals(teapotVertexData + 3, 8); - painter->setTexCoords(teapotVertexData + 6, 8); - glDrawElements(GL_TRIANGLES, teapotTriangleCount * 3, - GL_UNSIGNED_SHORT, teapotTriangleData); -#endif -} - -//! [accelerometer2] -void View::accelerometerTimeout() -{ - QVector3D g = gravity(); - mainCamera->setMotionAdjustment(g); - roomCamera->setMotionAdjustment(g); - update(); -} - -#define ACCEL_TO_G(v) (v / 9.80665) - -QVector3D View::gravity() const -{ - qreal x = ACCEL_TO_G(sensor->reading()->x()) * sensitivity; - qreal y = ACCEL_TO_G(sensor->reading()->y()) * sensitivity; - qreal z = ACCEL_TO_G(sensor->reading()->z()); - - return QVector3D(x, y, z); -} -//! [accelerometer2] diff --git a/examples/sensors/cubehouse/view.h b/examples/sensors/cubehouse/view.h deleted file mode 100644 index 6b356729..00000000 --- a/examples/sensors/cubehouse/view.h +++ /dev/null @@ -1,94 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtSensors module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef VIEW_H -#define VIEW_H - -#include -#include -#include -#include "camera.h" -#include "light.h" -#include "lightmodel.h" -#include "material.h" -#include "painter.h" - -class QAccelerometer; - -class View : public QGLWidget -{ - Q_OBJECT -public: - View(QWidget *parent = 0); - ~View(); - - void setShowFrameRate(bool value) { showFrameRate = value; } - -protected: - void resizeGL(int width, int height); - void initializeGL(); - void paintGL(); - -private slots: - void accelerometerTimeout(); - -private: - GLuint texture; - GLuint vertexBuffer; - GLuint indexBuffer; - Camera *mainCamera; - Camera *roomCamera; - qreal sensitivity; - LightModel *roomModel; - LightModel *normalModel; - Material *cubeMaterial; - Material *teapotMaterial; - Material *roomMaterialBack; - Material *roomMaterialLeftRight; - Material *roomMaterialTopBottom; - Painter *painter; - QTime time; - bool showFrameRate; - QAccelerometer *sensor; - - QVector3D gravity() const; -}; - -#endif diff --git a/examples/sensors/maze/info.json b/examples/sensors/maze/info.json index d31a2f0b..60c403e3 100644 --- a/examples/sensors/maze/info.json +++ b/examples/sensors/maze/info.json @@ -8,7 +8,7 @@ "MainQML": "Maze.qml", "Version": "1.0", "Identifier": "com.noklab.nrcc.maze.demo", - "Summary": "Labyrinth game using TitlSensor", + "Summary": "Labyrinth game using TiltSensor", "Author": "Qt" } } diff --git a/examples/sensors/sensors.pro b/examples/sensors/sensors.pro index 6389a013..8e909b7f 100644 --- a/examples/sensors/sensors.pro +++ b/examples/sensors/sensors.pro @@ -5,5 +5,4 @@ SUBDIRS += \ grue contains(QT_CONFIG,widgets):SUBDIRS += \ - sensor_explorer \ - cubehouse + sensor_explorer -- cgit v1.2.3